CN101675478B - 具有一个或多个存储器设备的*** - Google Patents
具有一个或多个存储器设备的*** Download PDFInfo
- Publication number
- CN101675478B CN101675478B CN2008800123678A CN200880012367A CN101675478B CN 101675478 B CN101675478 B CN 101675478B CN 2008800123678 A CN2008800123678 A CN 2008800123678A CN 200880012367 A CN200880012367 A CN 200880012367A CN 101675478 B CN101675478 B CN 101675478B
- Authority
- CN
- China
- Prior art keywords
- data
- memory devices
- memory
- width
- register
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1045—Read-write mode select circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- 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
- G06F13/1678—Details of memory controller using bus width
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
-
- 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)
- Dram (AREA)
- Read Only Memory (AREA)
- Logic Circuits (AREA)
- Memory System (AREA)
Abstract
一种具有在环形拓扑组织中串联的存储器设备以实现高速性能的***。该存储器设备具有动态可配置的数据宽度,使得该***可以用多达最大公共数量个有效数据焊盘来操作以最大化性能,或者以单个有效数据焊盘来操作以最小化功率消耗。因此,该***可以包括具有不同数据宽度的存储器设备的混合。在广播操作中,通过从存储器控制器串行传播到所有存储器设备的单个命令的发出,存储器设备是可动态配置的。当以不正确的序列接收读出输出控制信号时,通过实现数据输出禁止算法来确保***的稳健操作,其阻止有效数据被提供给存储器控制器。
Description
背景技术
闪速存储器是常用的一类非易失性存储器,其广泛用作诸如数字照相机和便携数字音乐播放器的消费电子设备的大容量存储装置。当前可用的包括2个层叠的晶片(die)的闪速存储器部件的密度可以达到32G比特(4GB),由于通常一个闪速部件的尺寸是小的,其适合用在流行的USB闪速驱动器中。
八百万像素的数字照相机和具有音乐和视频能力的便携数字娱乐设备的出现促进了对于存储大量数据的超高容量的要求,而这种要求是单个闪速存储器设备不能满足的。因此,将多个闪速存储器设备一起组合在一个***中来有效增加可用的存储容量。例如,这样的应用可能需要20GB的闪速存储密度。
图1为与主机***12集成的现有技术的***10的框图。现有技术的***10包括和主机***12通信的存储器控制器14以及多个非易失性存储器设备16。主机***12包括诸如微控制器、微处理器或者计算机***的处理设备。图1的现有技术的***10被组织为包括一个通道18,其中存储器设备16并行连接到通道18。本领域的普通技术人员应该理解现有技术的***10可以具有与其连接的、多于或者少于四个的存储器设备。
通道18包括一组公用总线,包括连接到所有其对应的存储器设备的数据和控制线。每一存储器设备可以由存储器控制器14提供的相应的芯片选择(启用)信号CE#1、CE#2、CE#3和CE#4来启用或停用。“#”指示信号为有效的低逻辑电平信号。在一个时间典型地选择芯片选择信号中的至多一个。存储器控制器14负责用于响应主机***12的操作经由通道18发出命令和数据到所选择的存储器设备。来自存储器设备的读出数据输出经通道18被传送返回至存储器控制器14和主机***12。现有技术的***10的操作可以是异步的或同步的。图1说明了使用时钟(CK)的同步***的示例,其被并行地提供到每一存储器设备16,以同步通道18上的数据传送。现有技术的***10通常称为包括多点(multi-drop)总线,其中所述存储器设备16对于通道18并行连接。
在现有技术的***10中,非易失性存储器设备16可以(但不是必须)互相大致相同,并且典型地是NAND闪速存储器设备。本领域内的普通技术人员应该理解闪速存储器可以组织为体,并且每一体可以被组织为块,以有利于块擦除。一些商业上可用的NAND闪速存储器设备具有两个存储体。
存在可以对***性能产生不利影响的特定问题。现有技术的***10的结构产生物理性能的限制。存在延伸跨越***的大量并行信号,它们所运载信号的信号完整性将被串扰、信号偏斜、同步开关噪声(SSN)削弱。由于闪速控制器和闪速存储器设备之间的每个信号轨道为了信号传递被频繁充放电,在这样的***中的输入/输出功耗成为一个问题。随着***时钟频率的增长,功耗将增加。
由于单个存储器设备的驱动能力相对长信号轨道的载荷小,也存在可以并行连接到通道的存储器设备的数量的实际限制。此外,随着存储器设备的数量的增加,需要更多的芯片使能信号(CE#),并且CK需要被发送给附加的存储器设备,当它们被发送到存储器设备时,其全部信号路径将更长。由于大范围的时钟分布的时钟性能问题为本领域公知,其成为具有许多存储器设备16的大的现有技术的***中的问题。因此,对于包括大量存储器设备的现有技术的存储器***,或者存储器设备被散布跨越于多个通道,或者存储器***的频率操作被限制;每种选择都涉及折衷。具有多个通道和附加芯片使能信号的控制器增加了***的成本。另外,***被限制于少量的存储器设备。
在图1的现有技术的多点***10中,每个存储器设备16的数据宽度必须相同。例如,如果数据通道宽度是32位,则每个存储器设备16必须是×32设备。如果替代的多点***具有8位数据通道宽度,则不能使用×32的存储器设备。代替地,而是需要使用不同的×8的存储器设备。因此,为了适应可能的***结构,存储器设备的制造商将生产具有不同数据宽度的相同存储器设备的变体。
随着消费者对较小形式因素产品的需求的增加,制造商需要寻找方法来最小化由诸如图1的现有技术的***10的半导体芯片所占用的面积或空间。虽然每个存储器设备芯片可以是小的,但是密封芯片的封装可能具有由用于在芯片输入/输出焊盘和印刷电路板(PCB)印制线之间耦合信号的封装引脚的数量确定的大的尺寸。不幸地,图1的现有技术的***10不 适合要求最小化的PCB面积的应用。因为随数据宽度增加而增加的封装尺寸,由于×8、×16乃至×32数据通道宽度,每个存储器设备和存储器控制器将占用较大的PCB面积。如果数据宽度被减小以最小化封装尺寸,则由于集合存储器***峰值带宽被减小,性能受到不利的影响。
因此,期望提供一种消耗最小数量的板面积的高性能***。
附图说明
现在将参考附图,仅通过示例方式来描述本发明的实施例,其中:图1为包括闪存设备的现有技术的***的框图;图2A为接收并行时钟信号的***的框图;图2B为接收串行的源同步时钟信号的***的框图;图3A为图2B的***的详细框图;图3B为图2A的***的详细框图;图4为具有用于图3A和3B的***中的核心和输入/输出接口的通用存储器设备的框图;图5A为通过封装互连到PCB的存储器设备的示例图解说明;图5B为包括串联的存储器晶片的封装设备中的***的示例图解说明;图6为具有可配置的数据宽度的存储器设备实施例的框图;图7为动态可调整***实施例的框图;图8A为根据当前所述的实施例用于设置***的有效数据宽度的方法的流程图;图8B为具有可配置的数据宽度的示例***的图解说明;图9为图3A和3B的***的模块化命令包结构的图解说明;图10示出列出用于操作图3A和3B的***的示例模块化命令包的表格;图11为图3A和3B的***的存储器设备中的设备地址逻辑的电路示意实施例;图12为图11中所示的广播地址检测器的电路示意实施例;图13为图11中所示的广播地址检测器的替代电路示意实施例;图14为根据当前所述的实施例的用于执行图3A和3B的***中的广播操作的方法的流程图;图15为根据当前所述的实施例的说明图3A和3B的***的示例有效读 出操作的时序图;图16为根据当前所述的实施例的说明图3A和3B的***的示例有效读出操作的时序图;图17为图6中所示的存储器设备的数据输出控制逻辑和数据输出电路的电路示意实施例;图18为说明示例无效读出操作的时序图;图19为说明另一个示例无效读出操作的时序图;图20为说明另一个示例无效读出操作的时序图;和图21为根据当前所述的实施例的数据输出禁止算法的流程图。
具体实施方式
在第一方面,提供一种具有存储器控制器和存储器设备的***。该存储器控制器包括第一数量个输出端口,该存储器控制器提供命令以从第一数量个输出端口的一个输出端口存取最大数据宽度配置数据。该存储器设备包括用于保存最大数据宽度配置数据的输入/输出寄存器、第二数量个数据输入焊盘和第二数量个数据输出焊盘。存储器设备在该第二数量个数据输入焊盘的一个数据输入焊盘处接收该命令,并且从该第二数量个数据输出焊盘的一个数据输出焊盘提供该最大数据宽度配置数据。根据本方面的实施例,该最大数据宽度配置数据在该输入/输出寄存器中是硬连线的,并且该存储器控制器包括第一数量个输入端口,用于从该第一数量个输入端口的一个输入端口接收该最大数据宽度配置数据。在另一个实施例中,该第二数量个数据输入焊盘中除了该一个数据输入焊盘外都被停用,并且该第二数量个数据输出焊盘中除了该一个数据输出焊盘外都被停用。
在本实施例的一个方面,该存储器设备包括用于保存从该存储器控制器接收的配置码的当前有效的宽度寄存器。该配置码启用第三数量个数据输入焊盘和第三数量个数据输出焊盘,其中,该第三数量小于或等于第二数量。而且,该存储器设备包括密封在封装中的存储器晶片,该封装具有第四数量个数据输入引脚和数据输出引脚。在此实施例中,最小公共数量个数据输入引脚电连接到最小公共数量个数据输入焊盘,该最小公共数量为第二数量和第四数量的较小值。第三数量可以在1和该最小公共数量之间。在本实施例的另一方面,提供将该第一数量个输出端口电连接到该第四数量个输入引脚的第五数量个导电轨道,且该第三数量是该最小公共数量和该第五数量个导电轨道的较小的。
在第二方面,提供一种具有当前有效宽度寄存器、第一数据输入/输出电路块和第二数据输入/输出电路块的存储器设备。当前有效宽度寄存器保存配置码。第一数据输入/输出电路块从数据输入焊盘接收该配置码。该数据输入/输出电路块传递该配置码到该当前有效宽度寄存器。第二数据输入/输出电路块响应保存在该当前有效宽度寄存器中的该配置码被选择性地启用。在本方面的实施例中,进一步提供用于保存最大数据宽度配置数据的输入/输出寄存器,其中该最大数据宽度配置数据由该第一数据输入/输出电路块通过数据输出焊盘来提供。在本实施例的进一步的方面,该当前有效宽度寄存器、该第一数据输入/输出电路块、该第二数据输入/输出电路块、该输入/输出寄存器、该数据输入焊盘和该数据输出焊盘形成在密封在封装中的存储器晶片上。该封装可以具体包括耦合到该第一数据输入/输出电路块的一个数据输入引脚。替代地,该封装可以包括耦合到该第一数据输入/输出电路块的第一数据输入引脚,和耦合到该第二数据输入/输出电路块的第二数据输入引脚。而且,该封装可以包括至少还有一个附加的数据输入引脚。
在第三方面,提供一种用于为具有与存储器控制器在环形拓扑中连接的至少一个存储器设备的***设置数据宽度的方法。该方法包括存取保存在该至少一个存储器设备中的配置数据,该配置数据对应于该至少一个存储器设备的最大数据宽度;确定所有配置数据的最小数据宽度;并且在该至少一个存储器设备中,设置1和该最小数据宽度之间的所选择的数据宽度。根据本方面的实施例,存取可以包括为该至少一个存储器设备分配标识号,并且在对应于1的数据宽度的单个数据线上串行发出读出命令。在本实施例的一个方面,该所选择的数据宽度由***的操作简档来确定,其中,通过将所选择的数据宽度设置为该最小的数据宽度,该操作简档对应于***的最大性能。替代地,通过设置该所选择的数据宽度为1,该操作简档对应于***的最小功率消耗。
在本方面的进一步实施例中,设置包括将对应于该所选择的数据宽度的配置码加载到该至少一个存储器设备的当前有效宽度寄存器。设置可以进一步包括发出寻址到该至少一个存储器设备的命令,用于将该配置码写到该当前有效宽度寄存器。在另一个实施例中,该***包括串联的多个存储器设备,并且设置包括发出具有由该多个存储器设备可识别的广播地址的命令,用于将该配置码写到该多个存储器设备的每个的当前有效宽度寄存器。
在第四方面,提供一种用于广播命令到与存储器控制器在环形拓扑配置中串行连接的存储器设备的方法。该方法包括发出具有对应于该命令的操作码的一个命令包和广播地址;在该存储器设备中串行接收该命令包,每个存储器设备被配置为识别所分配的设备地址和该广播地址;响应于该广播地址,执行每个存储器设备中的操作码;并且从该存储器设备的最后一个存储器设备传递该命令包到该存储器控制器,以结束广播。在本方面的实施例中,该命令包包括长度为n位的地址字段,用于提供2^n个总的设备地址,其中该总的设备地址的(2^n)-1个是所分配的设备地址,且(2^n)-1个总的设备地址中的一个是该广播地址。该广播地址可以是该2^n个总的设备地址的最高逻辑地址,其中,每个存储器设备逻辑译码该广播地址,用于启用该操作码的执行。替代地,该所分配的广播地址被保存在该每个存储器设备中,使得该广播地址匹配于该所分配的广播地址,用于启用该操作码的执行。
在第五方面,提供了一种用于禁止存储器设备中数据输出的方法。该方法包括接收数据输出控制信号,用于输出读出数据;并且当先前所接收的命令对应于非读出相关的命令时,禁止数据输出电路,并且当先前所接收的命令对应于读出相关的命令时,启用该数据输出电路。在本方面的实施例中,禁止包括输出对应于逻辑“1”数据和逻辑“0”数据的其中一个的数据的连续序列。启用包括操作串行数据寄存器,以当该数据输出控制信号处于有效的逻辑电平时响应时钟来串行提供该读出数据。禁止包括当该数据输出控制信号处于有效的逻辑电平时,从该串行数据寄存器解耦合该时钟。在本实施例中,响应处于有效的逻辑电平的命令锁存信号来锁存该先前所接收的命令,而且当响应该命令锁存信号的该有效的逻辑电平而锁存对应于写操作的控制信号时,将该时钟与该串行数据寄存器逻辑地解耦合。
在第六方面,提供一种包括串行数据寄存器、第一逻辑电路和第二逻辑电路的读出数据输出电路。串行数据寄存器响应时钟来串行输出读出数据。第一逻辑电路响应数据输出控制信号的有效逻辑电平,耦合该时钟到该串行数据寄存器。第二逻辑电路在非读出相关的操作期间停用 该时钟。
解决图1的现有技术的***10的许多性能问题的***是其中存储器设备彼此串联并且存储器控制器位于环形拓扑配置中的***。图2A和2B是根据当前所述的实施例的说明***的概念本质的框图。图2A是接收并行时钟信号的***的框图,而图2B是接收源同步时钟信号的与图2A相同的***的框图。时钟信号可以是单端时钟信号或差分时钟对。
在图2A中,***20包括具有至少一个输出端口Sout和输入端口Sin的存储器控制器22,和串联的存储器设备24、26、28和30。虽然在图2A中未示出,但每个存储器设备具有Sin输入端口和Sout输出端口。输入和输出端口包括接合存储器设备到为其一部分的***的一个或多个物理引脚或连接。在一个实施例中,存储器设备可以是闪速存储器设备。可替代地,存储器设备可以是DRAM、SRAM或任意其它类型的存储器设备,只要其具有与特定命令结构兼容的输入/输出接口,用于执行命令或用于传递命令和数据到下一存储器设备。图2A的当前示例包括4个存储器设备,但是替代的实施例可以包括单个存储器设备,或任意合适数量个存储器设备。因此,如果存储器设备24是连接到Sout的***20的第一设备,则存储器设备30是连接到Sin的第N个或最后一个设备,其中N是大于零的整数。则存储器设备26至28是在第一个和最后一个存储器设备之间的居间的串联的存储器设备。每个存储器设备可以在***的上电启动时采用独特的标识(ID)号或设备地址(DA),使得它们可被单独寻址。名称为“APPARATUS AND METHOD FOR PRODUCING IDS FOR INTERCONNECTEDDEVICES OF MIXED TYPE”的共有美国专利申请11/622828、名称为“APPARATUS AND METHOD FOR ESTABLISHING DEVICE IDENTIFIERS FORSERIALLY INTERCONNECTED DEVICES”的美国专利申请11/750649、名称为“APPARATUS AND METHOD FOR PRODUCING DEVICE IDENTIFIERS FORSERIALLY INTERCONNECTED DEVICES OF MIXED TYPE”的美国专利申请11/692452、名称为“APPARATUS AND METHOD FOR PRODUCING IDENTIFIERSREGARDLESS OF MIXED DEVICE TYPE IN A SERIAL INTERCONNECTION”的美国专利申请11/692446、名称为“APPARATUS AND METHOD FOR IDENTIFYINGDEVICE TYPE OF SERIALLY INTERCONNECTED DEVICES”的美国专利申请11/692326、名称为“ADDRESS ASSIGNMENT AND TYPE RECOGNITION OFSERIALLY INTERCONNECTED MEMORY DEVICES OF MIXED TYPE”的美国专利 申请11/771023和名称为“SYSTEM AND METHOD OF OPERATING MEMORYDEVICES OF MIXED TYPE”的美国专利申请11/771241描述了用于为***的串联的存储器设备产生和分配设备地址的方法,其内容通过引用全部包含于此。
因为除了链中的第一个和最后一个存储器设备,一个存储器设备的数据输入被连接到前一个存储器设备的数据输出,由此形成串联的***组织,所以存储器设备24至30被认为是串联。存储器控制器22的通道包括由连接到导线的不同引脚或相同引脚提供的数据、地址、控制信息。图2A的实施例包括一个通道,其中该一个通道包括Sout和对应的Sin端口。然而,存储器控制器22可以包括任意适合数量个通道,用于适应不同的存储器设备链。在图2A的示例中,存储器控制器22提供时钟信号CK,其被并行连接到所有的存储器设备。
在通常操作中,存储器控制器22通过其Sout端口发出命令,其包括操作码(op码)、设备地址、用于读出或编程的可选择的地址信息、和用于编程的数据。可以以串行位流命令包来发出命令,其中该包可以被逻辑地细分为预定尺寸的段。每段可以是例如大小1字节。位流是随着时间提供的位的序列或系列。由第一存储器设备24来接收命令,其将设备地址与其所分配的地址相比较。如果地址匹配,则存储器设备24执行该命令。命令通过其自己的输出端口Sout被传递至下一个存储器设备26,其中重复相同的过程。最后,具有匹配的设备地址的存储器设备,称为所选择的存储器设备,将执行由该命令所指定的操作。如果该命令是读出数据命令,在所选择的存储器设备将通过其输出端口Sout(未示)输出读出数据,其被串行传递通过居间的存储器设备,直到到达存储器控制器22的Sin端口。由于命令和数据以串行位流来提供,所以每个存储器设备使用时钟来时钟控制串行位的输入/输出并且用于同步内部的存储器设备操作。***20中的所有的存储器设备都使用此时钟。
因为根据图2A的***中所使用的时钟频率相对低,可以使用无终端接头的全摆幅CMOS信令水平,以提供稳健的数据通信。如本领域的普通技术人员所公知的,这也被称为LVTTL信令。
可以由图2B的***获得图2A的***20上的进一步的性能改进。除了从提供源同步时钟信号CK的替代的存储器控制器42串行提供时钟信号CK到每个存储器设备之外,图2B的***40与图2A的***20 类似。每个存储器设备44、46、48和50可以在其时钟输入端口接收源同步时钟并且经由其时钟输出端口将其转送至***中的下一个设备。在***40的一些示例中,时钟信号CK从一个存储器设备经由短信号线传递至另一个。因此不会出现关于并行时钟分布方案的时钟性能问题,并且CK可以操作在高频率。因此,***40可以以比图2A的***20更高的速度操作。例如,高速收发器逻辑(HSTL)信令可以被用来提供高性能数据通信。在HSTL信令格式中,每个存储器设备可以接收用于确定输入的数据信号的逻辑状态的参考电压。另一个类似的信令格式是SSTL信令格式。因此,***20和40的存储器设备中的数据和时钟输入电路彼此不同地构成。对于本领域的普通技术人员,HSTL和SSTL信令格式都是公知的。
图3A和3B是***的框图,其中图3A的***的存储器设备并行接收时钟,图3B的***的存储器设备串行接收时钟。在当前所述的实施例中,两个***均是具有与存储器控制器在环形拓扑中彼此串联的存储器设备的***。每个存储器设备被设计为接收从存储器控制器或先前的存储器设备接收的一个或多个串行位流中的命令和数据。通常,命令和读出数据串行流经***中的每个存储器设备。因此,由于这样的存储器设备的输入和输出接口电路串行接收和提供数据,其可以被称为串行存储器设备。在图3A和3B的***实施例中,示出了与存储器控制器在环形拓扑结构中串联的4个存储器设备,然而在任一***中可以包括任意合适数量个存储器设备。
在图3A中,***100包括存储器控制器102和四个存储器设备104、106、108和110。存储器控制器102并行提供控制信号到存储器设备。这些信号包括芯片使能信号CE#、复位信号RST#。在使用CE#的一个示例中,当CE#处于低逻辑电平时,设备被启用。在先前所考虑的设备中,一旦闪速存储器设备开始编程或者擦除操作,CE#可以被确立无效,或者被驱至高逻辑电平。但是在当前的实施例中,被确立无效的CE#具有将被停用的串行存储器设备的Sin至Sout的通信停用的效果。由于串行存储器设备被连接在环中,停用任意的设备切断了围绕环的通信,并且存储器控制器变得不能与存储器***中的所有存储器设备通信。结果是,CE#是至所有串行存储器设备的公共信号,并且被用于将整个存储器设置为低功率状态。在使用RST#的一个示例中,当RST#处于低逻辑电平时,存储器设备被设置为复位模式。在复位模式中,允许功率稳定并且通过初始化 所有有限的状态机并将任意配置和状态寄存器复位到它们的缺省状态,设备准备用于操作。存储器控制器102包括用于提供互补的时钟信号CK和CK#的时钟输出端口CKO#和CKO,和用于接收来自***的最后一个存储器设备的互补的时钟信号的时钟输入端口CKI#和CKI。每个存储器设备可以包括诸如DLL或PLL的时钟合成器,用于产生所接收的时钟的相位。一定的相位被用于将时钟边沿集中在输入数据有效窗口内以确保可靠的操作。每个存储器设备具有用于传递互补的时钟信号至下一存储器设备的时钟输入端口的时钟输出端口CKO#和CKO,和用于从存储器控制器102或先前的存储器设备接收互补的时钟信号的时钟输入端口CKI和CKI#。最后一个存储器设备110将时钟信号提供回存储器控制器102。
存储器控制器102的通道包括数据输出端口Sout、数据输入端口Sin,命令选通输入CSI、命令选通输出CSO(CSI的回波)、数据选通输入DSI和数据选通输出DSO(DSI的回波)。依据存储器控制器的特性,输出端口Sout和输入端口Sin可以是一位宽度或者n位宽度,其中n为正整数。例如,如果n为1,则在时钟的八个数据锁存边沿之后接收一字节的数据。数据锁存时钟边沿可以是上升时钟边沿,例如在单数据速率(SDR)操作中;或是时钟的上升沿和下降沿二者,例如在双数据速率(DDR)操作中。如果n为2,则在时钟的四个锁存边沿之后接收到一个字节的数据。如果n为4,则在时钟的两个锁存边沿之后接收一个字节的数据。对于任意宽度的Sout和Sin,存储器设备可以被静态配置或者动态配置。因此,在n大于1的配置中,存储器控制器以并行位流方式来提供数据。CSI被用于控制或启用出现在输入端口Sin上的锁存命令数据,并且具有用于当命令出现在数据输入端口Sin时为时间定界的脉冲持续时间。更具体地,命令数据将具有由多个时钟周期测量的持续时间,并且CSI信号的脉冲持续时间将具有相应的持续时间。DSI被用于启用所选择的存储器设备的输出端口Sout缓冲器以输出读出数据,并且具有用于将从其数据输出端口Sout提供的读出数据定界的脉冲持续时间,使得存储器控制器知道数据从最后一个存储器设备返回时何时锁存数据。
由于图3A的当前所述的实施例意欲用于高速操作,所以使用了高速信令格式,诸如HSTL信令格式。因此,提供参考电压VREF到每个存储器设备,其被每个存储器设备使用以确定在Sin、CSI和DSI输入端口接收的信号的逻辑电平。参考电压VREF可以例如由印刷电路板上的 另一个电路产生,并且基于HSTL信号的电压摆幅中点来设置为预定的电压电平。
在图3A的实施例的使用中,每个存储器设备位于印刷电路板上,使得环中的一个设备上的Sout输出端口引脚和下一个设备的Sin输入端口引脚之间的距离和信号轨道长度被最小化。可替代地,可以在***封装模块(SIP)中收集四个存储器设备,这进一步最小化信号轨道长度。存储器控制器102和存储器设备104至110串联,以形成环形拓扑结构,意味着最后一个存储器设备110提供其输出返回存储器控制器102。因此,本领域的普通技术人员可以理解存储器设备110和存储器控制器102之间的距离被容易地最小化。
在图3B中,***200包括存储器控制器202和存储器设备204、206、208和210。存储器控制器202可以被设计为除了并行提供时钟信号之外来提供与图3A中所说明的存储器控制器102类似的功能,因此,每个存储器设备的时钟输出端口CKO#和CKO不存在或未连接。而且图3A的***与图3B的***相比较,数据和选通信号的信令格式不同。例如,图3B的***的信令格式可以是全摆幅无终端接头的LVTTL信令格式。与较低时钟频率联合使用/在较低时钟频率使用的LVTTL信令不使用参考电压VREF。仅用于图3B的***中的存储器设备不需要VREF输入。如果存在VREF输入,这是因为它们也可以根据要求VREF的高速信令规范来通信。在这样的情况中,出于方便VREF被设置为电压电平,而不是信令中点,或者用于指示正在使用LVTTL信令。例如,对于这样的设备,VREF可以被设置为VDD或VSS,以指示LVTTL信令和根据图3B的网络组织,如与根据图3A的HSTL信令和网络配置相对。
根据示例实施例,图3A的存储器设备104、106、108和110和图3B的存储器设备204、206、208和210可以是具有被设计用于与其它存储器设备串行互连的输入/输出接口的任意类型的存储器设备。根据当前所述的实施例,图3A和3B的存储器设备可以相同,并且由于它们将具有能够以LVTTL输入信号或HSTL输入信号操作的输入和输出缓冲器电路,因此在两个***中都可操作。本领域的普通技术人员可以理解,存储器设备可以包括输入和输出缓冲器电路,用于以与LVTTL或HSTL信号等效的其它类型的信号格式操作。虽然这些存储器设备可以是闪速存储器设备,但是它们也可以是DRAM、SRAM或任意其它合适类型的易失性或非易 失性存储器设备。
图4为说明具有适合用在图3A和3B的***中的核心和输入/输出接口的通用存储器设备的概念性质的框图。存储器设备300包括存储器核心,其包括存储器阵列存储体302和304以及用于访问存储器阵列存储体302和304的控制和I/O电路306。本领域的普通技术人员可以理解存储器阵列可以被组织为单个存储体或者具有两个或多个存储体。存储器核心可以是例如基于DRAM、SRAM、NAND闪速或者NOR闪速存储器。当然,可以使用任意合适的新兴存储器和其对应的控制电路。因此,依据存储器核心的类型,电路块306可以包括纠错逻辑、电压发生器、刷新逻辑和对于存储器类型需要执行本地操作的任意其它电路块。
典型地,存储器设备使用命令译码器,用于响应所接收的命令通过确立内部控制信号有效来初始化相关电路。其也将包括用于接收和锁存数据、命令和地址的公知的I/O电路。与传统闪速存储器中的对应的电路不同,本发明的存储器设备包括串行接口和控制逻辑块308。此块接收RST#、CE#、CK#、CK、CSI、DSI和Sin输入,并且提供Sout、CSO、DSO、CKO和CKO#输出。
接口和控制逻辑块308负责用于如公开号为20070076479A1的共有的美国专利中所讨论的各种功能。接口和控制逻辑块308的示例功能包括设置设备标识符号码、传递数据到下一个串联的存储器设备,并且译码所接收的命令用于执行本地操作。该电路串行接收命令,包括专用于控制或配置存储器设备的串行操作的命令,除了专用于控制核心存储器电路的本地命令,还包括用于保存和从存储器阵列重新得到信息的那些命令。例如,当前所述的实施例的存储器设备响应与串行链路的管理相关的命令(例如提供对状态寄存器的读出访问的命令)以及与信息的保存和重新得到相关的本地命令。命令集可以被扩展以包括存储器设备被串联时由存储器控制器可用的特征。例如,可以请求状态寄存器信息来评定存储器设备的状态。
设备标识符(ID)号码的设置可以以数种方式完成。例如,设备ID号码可以被预设或硬连线在每个存储器设备中,或其可以由存储器控制器分配。一种技术是ID号码自分配,其在2006年12月20日提交的共有的美国专利申请11/613563中披露,其披露内容通过引用全部包含于此。在ID号码自分配中,在第一存储器设备中初始化写ID操作,以使 设备建立ID。第一存储器设备通过获得其Sin输入的状态来接收第一数值。然后第一设备从第一数值建立设备ID,其可以包括将第一数值放置在与该设备相关的存储装置(例如,寄存器)中。第一设备从所获得的输入的状态产生第二数值。例如,该第二数值可以是第一数值加一。第一存储器设备从其Sout输出来输出该第二数值到第二存储器设备。第二存储器设备接收该第二数值并重复前面所提及的处理以建立其唯一的ID。
在替代的设备ID号码分配技术中,***的存储器设备被首先初始化为复位状态,之后存储器控制器反复地发出特定的设备ID号码到每个存储器设备,该技术在2007年8月22日提交的共有的美国专利申请11/843024中描述,其内容通过引用而被包含。第一存储器设备将接收和接受所分配的ID号码,并随后从复位状态退出。在复位状态中,存储器设备将不传递设备ID号码到后面的存储器设备。存储器控制器对于所分配的ID号码的回波监控其数据输入。如果在预定的时间期间后没有接收到回波,则发出下一个ID号码。不处于复位状态的居间的存储器设备将传递ID号码到下一个存储器设备。
图3A和3B的***可以包括存储器设备的类型的混合,每一个对于主机***提供不同的优势。这样的具有混合类型的存储器设备的***在2006年12月6日提交的共有的美国临时专利申请60/868773中披露,其全部披露内容通过引用包含于此。这样的***的进一步的细节在名称为″ADDRESS ASSIGNMENT AND TYPE RECOGNITION OF SERIALLY INTERCONNECTEDMEMORY DEVICES OF MIXED TYPE″的共有的美国专利申请11/771023,和名称为″SYSTEM AND METHOD OF OPERATING MEMORY DEVICES OF MIXED TYPE″的共有的美国专利申请11/771241中披露,其内容通过引用而被包含。例如,DRAM存储器的高速可以用作高速缓存,而非易失性闪速存储器可以被用于低功率大容量数据存储装置。不考虑所使用的存储器设备的类型,由于接口和控制逻辑块308根据预订协议接收命令,所以每个存储器设备为单独可寻址的,以对命令起作用。而且,如果非存储器设备可以对串行接收的命令起作用,并且传递命令和读出数据到***中后面的设备,则图3A和3B的***可以包括该非存储器设备。
图3A、3B和4中所示的存储器设备的优点为:被制造为×8物理设备宽度的存储器设备(意味着其将具有Sin[0:7]串行输入端口和对应的Sout[0:7]串行输出端口)不必使用其所有的输入和输出端口。这意 味着单个×8串行存储器设备可以被选择性地和动态地配置用于具有不同效果通道宽度的各种***。此能力的益处在于当构建新的***时***设计者可以从较宽选择的可用部分中进行选择。此益处的另一方面在于存储器的销售者可以将本质上宽的存储器设备销售给具有窄链路的***。
图5A是示出以一种可能的方式密封存储器晶片402的封装400的俯视图的图。具有存储器晶片402的封装400对应于图3A和3B中所示的存储器设备。封装400具有数据输入引脚404和数据输出引脚408,其是用于电连接晶片402到印刷电路板(PCB)412的结构。在PCB 412中包括由一组导电轨道或印制线406和410组成的链路,导电轨道或印制线406和410被连接到封装400的引脚404和408。在图5A中,每组印制线406和410包括8个单独的印制线。存储器晶片402具有数据输入焊盘414和对应的数据输出焊盘418。数据输入焊盘414电连接到对应的数据输入引脚404,并且数据输出焊盘418电连接到对应的数据输出引脚408。这些电连接当前在图5A中被示为接合线416,但是也可以代替地使用焊料块。在本示例中,仅示出了数据输入和输出焊盘和引脚,而为了简化该图,没有示出控制信号输入和输出、以及电压电源输入。
图5B是示出以一种可能的组织方式来密封两个存储器晶片452和454的***封装(SIP)450的侧视图的图,其中存储器晶片452和454与图5A中所示的存储器晶片402相同。每个存储器晶片具有数据输入焊盘414和数据输出焊盘418。SIP 450也被称为多芯片封装,其具有数据输入引脚456和数据输出引脚458。在本视图中,仅示出了一个数据输入引脚、一个数据输出引脚、一个数据输入焊盘和一个数据输出焊盘。两个存储器晶片并排放置,其中存储器晶片452将其数据输入焊盘414经由接合线460连接到数据输入引脚456,且存储器晶片454将其数据输出焊盘418经由接合线462连接到数据输出引脚458。存储器设备452将其数据输出焊盘418经由接合线464连接到存储器设备454的数据输入焊盘414。在这样的组织中,接合线460、462和464的内部线等效于PCB 412的链路406/410。图5B示出存储器晶片的一种可能的内部布局,但是本领域的普通技术人员可以理解晶片452和454可以层叠。
在图5A和5B的当前示例中,存储器晶片具有被限定为形成在该晶片上的输入数据焊盘和输出数据焊盘的数量的物理设备宽度。封装宽度是封装上的输入数据引脚和输出数据引脚的数量。这些引脚是封装 400和存储器晶片402的结合的串行存储器设备的输入端口Sin[1:n]和输出端口Sout[1:n]。链路宽度是形成在PCB上的导电轨的数量。由于图5A的存储器晶片402被制造用于通过其数据输入焊盘414接收4个输入数据流并且通过其数据输出焊盘418提供4个相应的输出数据流,所以其具有×4物理设备宽度。封装400具有两个输入数据引脚404和两个对应的数据输出引脚408。链路宽度总共为8,但是仅顶部两个连接到封装400的引脚。有效的或启用的存储器晶片402的数据输入焊盘414和数据输出焊盘418的最大数量是由封装400的数据引脚404/408的最大数量物理地限制的。从这开始,为了方便,涉及存储器晶片402和封装400的数据引脚或焊盘将包括数据输入和输出焊盘和引脚。因为存储器晶片402的底部两个数据焊盘414/418没有连接,它们被动态地停止使用,且存储器晶片402仅从其顶部两个数据焊盘414/418接收并提供数据。在使用中,底部两个数据输入焊盘414可以被保留为打开,且底部两个数据输出焊盘418可以被接合到诸如VSS的供电电压。因此,对于包括此封装400的任意***,有效的宽度可以是×1或×2。对于本封装示例的最大的有效宽度为×2,其中最大有效宽度是指***的数据宽度。虽然本示例的存储器晶片402被制造为×4晶片,存储器晶片402可以被动态地配置为以小于×4的宽度来操作。在本示例中,如果此封装400中的存储器晶片402被动态地配置为以×4的宽度来操作,则其实际上仅接收其所期望的一半的位。***如此配置是没有作用的。
对于这些特性的每一组合,名称为“最大可用数据路径宽度”的最后一列说明存在对于***中设备的数据焊盘的最大可用数量。其是小于或等于前3列中物理特性的每一个的最大整数。例如,如果连接此存储器设备到下一个的物理链路宽度是两位宽度,存储器晶片被制造为×2并密封在×4的封装中,则可用数据焊盘的最大数量至多是2。表1中所示的所有组合具有物理封装数据宽度大于或等于存储器晶片数据宽度的属性。但是,存储器晶片数据宽度通常可以大于封装数据宽度。
因此,当前所述的实施例的存储器设备的动态配置允许其用在具有任意合适数量个数据引脚的封装中。应该注意,在表1中所示的配置,其中和存储器设备中的有效的数据焊盘相比,封装具有较多的数据引脚。为了使存储器设备的特性对于存储器控制器直接可用,存储器设备包括编码这些特性的存储器控制器可读的一个或多个寄存器。特别的,存储器设备包括I/O宽度寄存器,其编码晶片上的Sin和Sout数据端口的宽度并且使此宽度对于存储器控制器有效。其它实施例还可以包括在这个或另外的寄存器中的物理封装宽度。这两类实施例的主要区别是源于先前所提出的例如在表1中建立的约束,其中物理封装段度宽度大于或等于存储器晶片数据宽度。如果此约束存在,则I/O宽度寄存器仅需要编码存储器晶片数据宽度。如果此约束不存在,则I/O宽度寄存器需要编码物理封装数据宽度和存储器晶片数据宽度二者或者编码二者中的较小者。由于不希望封装上的附加的引脚专用于设置当前启用的输入和输出数据引脚的数量,所以晶片包括当前有效宽度寄存器。该晶片根据保存在该寄存器中的数值来动态配置,使得能够使用的输入和输出数据焊盘的数量等于所保存的数值或指示当前有效数据宽度的合适的可替代数值。如果存在物理输入和输出数据焊盘的任意剩余部分,则其和其相应的电路被停用。基于PCB和/或***的物理链路宽度考虑,存储器控制器将随后将合适的数据加载 到当前有效宽度寄存器,用于停用未使用的数据焊盘并且将所有的通信(出和入串行存储器设备的)导向剩余的启用的数据焊盘上。
图6是具有可配置的数据宽度的存储器晶片的部分框图实施例。电路块的布置不意欲表示物理布局或所制造的晶片中的块的位置。此存储器晶片可以被用于图3A和3B中所示的***。存储器晶片500被设计和制造为×4晶片,并且因此具有4个数据输入焊盘502和4个对应的数据输出焊盘504。每对数据输入焊盘502和数据输出焊盘504被耦合到数据I/O电路块506。逻辑地,最顶部的数据I/O电路块506最不重要,并且因此被标记为“Data_0”。剩余的数据I/O电路块506被以增加的逻辑符号“Data_1”、“Data_2”和“Data_3”的顺序标记。每个数据I/O电路块506耦合到存储器核心508,其包括存储器阵列,控制逻辑和对于存储器晶片500的正确操作必需的其它电路。每个数据I/O电路块506可以传递输入数据至其对应的数据输出焊盘504和/或至存储器核心508。来自存储器核心508的读出数据可以被提供至每个数据I/O电路块506,用于通过数据输出焊盘504输出。数个寄存器耦合至存储器核心508,该寄存器包括I/O宽度(I/O)寄存器510、电流有效宽度(CAW)寄存器512、分配的设备地址(ADA)寄存器514和广播地址(BA)检测器516。
典型地,存储器核心508被组织为内部具有非常多的数据线的非常宽的阵列。典型地,宽的内部数据总线也被耦合至将存储器核心耦合至数据焊盘的窄的I/O数据路径,其耦合存储器核心至数据焊盘。宽的存储器数据路径和窄的内部I/O数据路径之间的耦合由双向多路复用器的集合的等效器件来完成,其在宽的数据路径的特定线上将位集中至窄的数据路径并从窄的数据路径集中位。存在数个普通的机制用于实现此本领域的普通技术人员公知的多路复用功能。在先前所考虑的存储器设备中,这些多路复用器的控制其部分来自于存储器核心访问的地址,并且典型地具体为列地址。但是,在本发明的串行存储器设备中,这些多路复用器的控制附加地来自当前有效宽度寄存器的内容。宽的内部数据路径和至I/O焊盘的窄的I/O数据路径之间的路线因此依赖于当前使用中的I/O焊盘的数量。由于此控制的性质类似于当在功能测试或封装期间单个存储器晶片设计能够被熔丝编程为固定宽度的任意数量设备中的一个时那些通用的多路复用器的控制的调整,所以本领域的普通技术人员公知该控制的性质。关于捕获输入的命令的控制和地址部分的问题存在类似的情形。关于图9 顺序以下描述的这些部分根据保存在CAW寄存器中的数值到达不同的数据输入焊盘。因此,将输入的位分路到临时保持设备地址、操作码和存储器阵列地址的寄存器中的适当位置的多路复用器必须都根据CAW寄存器的内容被部分控制。
I/O宽度寄存器510被硬连线以保存指示存储器晶片500的最大数据宽度配置和其数据焊盘被物理地连接的封装引脚的可选择的数量的数据。硬连线包括设置非易失性数据存储装置,其在上电存储器设备500时感测。这样的非易失性数据存储装置包括熔丝和反熔丝,熔丝可以通过电或通过激光地断开,反熔丝可以电熔化以建立电传导链路。本领域的普通技术人员理解可以使用任意适合的非易失性编程技术。CAW寄存器512用作两个目的。第一,当所希望的数据宽度配置是由存储器控制器确定时,配置码由存储器控制器发至***中的所有存储器设备。此配置码被载入CAW寄存器512,以仅启用将被使用的数据I/O电路块506,由此节约功率。此配置码进一步由诸如命令译码器的存储器核心508的控制逻辑使用,以确保基于存储器设备500的当前有效数据宽度配置的所接收和所提供的数据的正确映射。在存储器设备500的初始上电期间,缺省的当前有效数据宽度配置被设置为最小可能设置,其是×1。在缺省的×1的当前有效数据宽度设置中,仅对应于逻辑位置Data_0的数据I/O电路块506被启用。
ADA寄存器514保存由存储器控制器发出的所分配的设备地址,由此允许存储器设备500对特定地向其寻址的命令起作用。因此,通过发出寻址每个存储器设备的命令,可以发出相同的配置码到***中的每个存储器设备。这样的全局的操作通过不考虑存储器设备的所分配的设备地址来广播配置码到所有的存储器设备而更有效地完成。如将在后面所描述的,存储器设备500可以被预设以识别一个地址,称为广播地址,其不被分配到任意存储器设备但是被所有的存储器设备识别。可选择地,可以基于***中的存储器设备的数量和已经被分配的设备地址来动态地确定广播地址。因此,此广播地址被保存在BA检测器516的寄存器中,用于比较与输入命令相关的地址。
因此,根据图6所组织的存储器设备可以被用于诸如图3A和3B中所示的***中。在一些示例中,***中的所有的存储器设备是功能相同的,意味着它们在其内部具有相同的封装和存储器设备。但是,图 3A和3B的***可以包括混合的存储器设备。虽然***中的所有的存储器设备具有相同的物理封装宽度且晶片具有相同的数据宽度是可能的和可期望的,但是这不是必要的情况。即使存储器设备具有不同的特性,其集合可以放置在根据图3A或3B的***中。
根据一个实施例,***包括在***建立期间或区域内增加或移除一个或多个存储器设备的能力。图7是说明动态可调整的***实施例的框图。可调整的***600包括存储器控制器602,固定的存储器设备604、606、608和610,扩展链路612、614、616、618和620,和扩展模块622、624和626。固定的存储器模块604、606、608和610互相串联,串联到居间的扩展链路,并且到存储器控制器602。每一扩展链路为阳、阴或者兼两性的耦合装置,用于可释放地接收和保持具有对应的耦合装置的模块。每一模块包括与扩展链路的端子串联的至少一个固定的存储器设备611。在当前所示的示例中,扩展模块622和626的每一个包括串联在模块耦合装置的输入连接器和输出连接器之间的四个存储器设备。模块624包括串联在其模块耦合装置的输入连接器和输出连接器之间的两个存储器设备。因此,通过将模块***到扩展链路中,附加的串联存储器设备可以被动态***到固定的存储器设备之间。诸如扩展链路614和620的未使用的扩展链路将具有连接到其的适合的跳线628和630,用于维持链的连续的串行电连接。
可调整的***600可以包括任意合适数量个固定存储器设备和扩展链路,并且存储器模块可以包括任意合适数量个串联的存储器设备。因此,可调整的***600简单地通过增加新的模块或者使用较大容量模块来代替现有模块来实现存储器容量的完全可扩展,而不会影响整体性能。由于相同的通道被组装以附加的串联的存储器设备,并且本领域的普通技术人员理解如何连接诸如CE#、RST#的并行控制信号和电源到所***的模块,所以不需要改变存储器控制器。在***模块或者移除模块之后,存储器控制器可以为***600中的新的一组存储器设备初始化自动的设备ID的产生。
在这样的实施例中,***中存在存储器设备的混合,其中不同的存储器设备可以具有不同的物理封装数据宽度和晶片数据宽度。因此,***600的最大有效数据路径宽度是所有存储器设备中的链路宽度、封装宽度和晶片宽度的最小值。在正常的存储器操作可以开始前,确定系 统的最大有效数据路径宽度。一旦确定***的该最大有效数据路径宽度,则所有的存储器设备以等于或小于最大数据宽度的当前有效数据宽度来操作。由存储器控制器来完成***的最大数据宽度的确定和有效数据宽度的设置。图8A是根据当前所述的实施例概述用于设置***的存储器设备的当前有效数据宽度的方法的流程图。此方法将参考图8B中所示的示例***来描述。
图8A的方法作为图8B的***的上电初始化程序的部分来执行。假设存储器控制器700可配置为达到×4数据宽度,因此具有电连接到在***的PCB上实现的4个物理导线702的4个数据输出端口。虽然在图8B中未示出,但是存储器控制器700具有连接到4个物理导线的4个数据输入端口,该物理导线直接连接到最后一个存储器设备的数据输出端口。每个存储器封装704和706具有接合地或选择性地耦合到PCB的导线702的其数据引脚。为了简化示意图,忽略了从最后一个存储器设备到存储器控制器700的数据返回路径,如存储器设备所使用的控制信号。存储器封装704具有两个输入和输出数据引脚,而存储器封装706具有四个输入和输出数据引脚。存储器设备708被制造为×4,且仅将其前两个输入/输出数据焊盘接合到封装704的引脚。存储器设备710被制造为×1,并且将其输入/输出数据焊盘接合到封装706的顶部引脚。
在步骤750,在***上电时本方法开始,由此所有的存储器设备默认为×1有效数据宽度配置,并且存储器控制器默认输出数据为×1数据配置。在此配置中,假设最顶部的引脚是逻辑Data_0位置,其被用于缺省的有效数据宽度配置。在×1链路宽度中,所有存储器设备将接收由存储器控制器发出的数据。然后,在步骤752,存储器控制器随后根据先前所提及的涉及存储器ID号码产生的共有的美国专利申请所公开的技术来执行ID号码产生。在ID号码被分配并且保存在每个存储器设备相应的ADA寄存器514中之后,在步骤754,存储器控制器将通过发出对应的命令来单独地访问每个存储器设备的I/O宽度寄存器510。然后,在步骤756,存储器控制器集合所有的I/O宽度寄存器数据并且数学地确定跨越***中所有存储器设备的链路宽度、封装宽度和晶片宽度的最小值。例如在图8B的***中,存储器设备708具有值域为2的有效数据宽度,存储器设备710具有为1的最大有效数据宽度。由于存储器设备710没有第二个数据引脚,所以公共的有效数据宽度是1。
I/O宽度寄存器将环中的每个串行存储器设备的物理封装数据宽度和/或存储器晶片数据端口宽度通知给存储器控制器。如果二者均未被提供,则另一个的下限可能需要从已经提供的一个根据约定来推算。为了确定最大可用数据路径宽度,存储器控制器必须还知道围绕***的最小链路宽度。为了了解这个,最直接的方式是指定链路段必须不比存储器控制器的数据端口宽度窄,这是其本质上知道的。一种替代是要求所有的链路段为相同宽度,并且存储器控制器能够确定连接到其Sin输入端口的链路段的链路宽度,该连接是通过将那些弱的(即:大电阻)上拉或下拉电阻器放置在连接到链路印制线406上的那些输入上,而那些相对的输入不被放置。通过当环被停用(经由CE#信号)时感测其输入上的电压,存储器控制器可以因此确定环中的最小链路宽度,并且由此计算整个环中的最大可用数据路径宽度。但是,多个中的又一个替代依赖于所有链路宽度必须比环中的最窄的串行存储器设备要宽的约定。基于此假设,存储器控制器可以仅依据环中设备的物理封装数据宽度和/或存储器晶片数据端口宽度来确定最大可用数据路径宽度。
在步骤758,存储器控制器700将应用优选的操作简档来设置***的最后的有效数据路径宽度为小于或等于最大可用数据路径宽度的一些数值。例如,一个操作简档可以用于高性能,第二个可以用于最小化功率消耗,第三个可以是平衡性能和功率的简档。在高性能简档,选择最大数据宽度。在另一方面,最小化功率消耗简档可以指示选择最小数据宽度(即×1)。平衡性能和功率的简档可以是***的最大数据宽度以下的数值。适应性的简档将导致在正常操作过程期间或从一种***水平的功率或性能状态向另一种转变时,根据特定的性能、功率和热约束或最优化来改变有效数据路径宽度。例如,作为热温度过高事件的结果的***总调节的一部分,有效数据宽度可以从大的数值改变为较小的数值。一旦存储器控制器700或运行在主机***12上的软件已经确定使用公共有效数据宽度,则在步骤760,访问每个存储器设备,以用正确的配置码加载其CAW寄存器512。这可以通过广播命令以用公共有效数据宽度来加载所有存储器设备的CAW寄存器512来完成。因为如果环上的任意两个相邻设备不认为连接它们的链路的当前有效宽度相同,则环不能正确地操作,即使是暂时地,所以这必须由广播命令或本质上同步地改变所有串行存储器设备的有效数据路径宽度的一些其它可比较机制来完成。在图8B的当前示例中, ***的最大可用数据宽度是×1,这样存储器设备708保持缺省的×1数据宽度,而存储器设备710保持缺省的×1数据宽度。在图8B的示例中,如果所有的存储器设备具有×1的最大数据宽度,则不需要步骤758。类似地,在此情况中,由于所有的串行存储器设备已经在每一步骤750作为×1设备来操作,所以步骤760是可选的。
既然所有的存储器设备已经被配置为具有所确定的有效数据宽度,可以进行进一步的初始化操作或正常操作。因为如果有效数据宽度被设置为大于缺省×1配置,则可以更快速地执行后面的操作,所以在其它初始化操作之前执行图8A的方法是有利的。具有不同物理封装和晶片焊盘数据宽度配置的存储器设备的混合可以在相同的***中一起使用。在图7的实施例中,通过在每次移除或增加扩展模块之后上电来执行图8A的方法。
如前面所提及的,广播是用于简化公共命令到***中的所有存储器设备的分布的技术。不使用广播,则根据设备地址发出单独的命令到每个存储器设备。由于其需要记录命令已经发送去的设备,所以在存储器控制器中需要更多的时间和***开销。如果存储器控制器不能安全地中断,则可能存在没有接收命令的存储器设备。在图3A和3B的***中,由存储器控制器发出的任意命令包将传播通过所有的存储器设备,并且仅其所分配的设备地址匹配命令中的设备地址的存储器设备将对该命令起作用。所有其它存储器设备将忽略该命令。在当前所讨论的广播技术中,存储器控制器发出一个当其传播通过所有的存储器设备时由每个存储器设备作用的命令包。因此,存储器控制器操作被大大简化。
命令包800具有图9中所说明的结构,并且包括3个字段,其中的两个是根据由存储器控制器所发出的特定命令可选的。作为必备字段的第一字段是命令字段802。第一可选字段是地址字段804,且第二可选字段是数据字段806。
命令字段802包括两个子字段,第一个为设备地址(DA)字段808和第二个为操作码字段810。设备地址字段808可以是长度为任意合适数量的位,并且被用于寻址***中的每个存储器设备。例如,长度1字节(8位)的设备地址字段808足以寻址多达256(2^8)个存储器设备,但是该设备地址字段808可以是任意期望的长度。可以保留一个地址用于同步寻址所有的存储器设备,即用于广播操作。在替代实施例中,设备地 址字段808可以包括设备类型字段以指示操作码字段810所指向的存储器设备的类型。例如,设备类型字段可以指定DRAM、SRAM或者闪速存储器。操作码字段810可以是长度为任意合适数量的位,来表示用于任意合适数量的存储器设备的命令,并且可以包括存储体地址。例如,闪速存储器命令集从本质区别来看将具有不同于DRAM命令集的命令,因此,如果***包括两种存储器设备,操作码字段将被分配为适应来自两个命令集的所有可能的命令。但是,用于处理不同类型的存储器的优选的替代是将操作码空间分为命令的两个集合:与环操作相关的那些命令和与存储器阵列操作相关的那些命令。前一集合可以与所有的存储器类型相兼容,但是第二组不需要。该组中的操作码的语义将是存储器类型专用的。例如,当发出到闪速存储器时意味着编程的具体的操作码可能在被呈现给DRAM时意味着刷新。由于存储器控制器必须知道在每个分配的设备地址是哪种存储器,所以其不关心这些功能是否共享相同的操作码。地址字段804用于基于操作码所指定的操作类型来提供存储器阵列的行地址(Row Addr)或者列地址(Col Addr)或者全部地址。数据字段806将包括被写入或者编程到存储器设备的任意合适数量位的数据。由于对于特定操作可以不需要写数据并且对于特定操作可以不需要地址和写数据,因此命令包800将在尺寸上有变化。
图10列出可以被用于操作具有图4所示的组织的闪速存储器设备的示例命令包,用于前述的图3A和3B的***中。图10中的字节位置对应于其被存储器设备串行接收的顺序。命令字段802占据第一和第二字节位置,其包括作为第一字节信息的设备地址(DA)和作为第二字节信息的对应于操作的操作码。操作码被表示为十六进制数值,并且“X”指示字节的后半部的4位可以是任意数值。在图10的闪速操作码的特定情况中,对于一些命令的操作码字节的第二个半字节中的由“X”表示的4个未使用的位是存储体地址的位置。在此方式中,总的来说,一些命令针对串行存储器设备,并且一些针对设备中的特定存储体。操作码空间的这种结构便于单个串行存储器设备中的存储体与存储体的并行和并发。地址字段804可以包括占据第三到第五字节位置的三字节行地址(RA),但可以缩短用于其它命令以包括仅占据第三和第四字节位置的两字节列地址(CA)。对于包括两字节列地址的命令,如果数据有那么长的话,数据字段806将占据第五字节的位置到第2116字节的位置或者超出该位置。该 数据可以占据任意数量个字节位置。
由存储器控制器发出的任意命令包800将由***中每一存储器设备串行接收,并且仅仅所分配的设备地址与命令字段802的DA子字段808匹配的存储器设备将对操作码子字段810起作用。命令包被传递通过存储器设备并且到链中的下一个存储器设备。由于操作码专用于特定操作,图4的存储器设备300的接口和控制逻辑块308将控制所需要的电路用于锁存命令包的地址和/或数据信息。例如,如果通过分配的存储器设备接收页面读出命令包,所分配的存储器设备将译码操作码并且控制合适的电路来锁存随后的三字节行地址。图10中列出的示例命令包针对闪速存储器操作。对于具有不同操作的任意其它类型的存储器设备的一组命令包可以遵循所描述的命令结构。如果DA子字段808是n位长度,则提供总共多达2^n的设备地址,由此寻址多达2^n个存储器设备。在当前所述的实施例中,地址中的(2^n)-1个被分配给对应数量的存储器设备,这些地址中的一个被保留作为广播地址。
在图10中,所示“操作中止”命令针对特定的存储器设备。但是,通过设置第一字节为十六进制地址FFh,此命令可以被广播到所有的存储器设备。在当前的示例中,假设地址FFh是为广播命令保留的未分配的DA。中止操作类似于软复位,其中过程中的所有操作被中断,以将存储器设备返回到备用状态。“写CAW寄存器”命令被示出作为广播命令,其中图10中该命令中的设备地址是FFh。这个命令被用于图8A的前面提及的方法,用于将所选择的有效数据宽度配置码加载到CAW寄存器512。虽然在图10中未示出,但是也可以广播用于将所有的存储器设备置于预设测试模式的测试命令。
为了图3A和3B中所示出的***的存储器设备响应广播命令,使用简单的逻辑电路来检测预定的广播地址(BA)。图11是说明当前所述的实施例的每个存储器设备中的设备地址逻辑的一个可能电路实施例的电路示意图。参考图6中所示的存储器设备,可以在存储器核心508中实现该逻辑。
在图11中,设备地址逻辑830负责产生主使能信号EN,用于启用存储器设备的其它逻辑和电路,以响应所设计的设备地址或广播地址来对所接收的命令包起作用。设备地址逻辑830包括用于保存来自存储器控制器的所分配的设备地址的ADA寄存器514,XNOR逻辑832、AND逻 辑833、OR逻辑834和BA检测器516。XNOR逻辑832接收保存在ADA寄存器514中的所有n位,并且执行与命令包的n位设备地址DA[1:n]的逐位的比较。总线DA[1:n]一旦已经完整地接收当前命令的设备地址,就与其通信。接收命令的设备地址部分所需的时间依赖于字段的宽度(图10的示例中的1字节),和当前有效数据路径宽度,如在CAW寄存器中所编码的。设备地址DA[1:n]被临时保持在寄存器中(未示出),至少直到命令包被完整地接收。XNOR逻辑832将产生对应于设备地址DA[1:n]的n位位置和ADA寄存器514的n位位置的比较的n个中间输出信号。AND逻辑833接收所有的n个中间输出信号,以便如果ADA寄存器514和DA[1:n]之间的所有位位置匹配,则产生高逻辑电平的单个使能信号en1。广播地址(BA)检测器516接收设备地址DA[1:n],并且如果对于***中的所有存储器设备来说BA匹配预定的BA集,则产生高逻辑电平的单个使能信号en2。OR逻辑834接收en1和en2,以便当en1或en2上升到高逻辑电平时,产生高逻辑电平主使能信号EN。因此,当命令包包括匹配的设备地址或广播地址,存储器设备将响应该命令。如先前所注意到的,广播地址可以是预设的并且固定的,或者由存储器控制器动态分配。
图12是根据一个实施例的BA检测器516的电路示意图。在此实施例中,广播地址是预设的并且固定的,且由译码器逻辑836来译码。在此示例中,预设的广播地址是逻辑“1”的位的集合,其表示最高的逻辑地址。因此,译码器逻辑836被实现为具有n输入的NAND逻辑门,每个输入接收设备地址DA[1:n]的一位位置。因此,如果DA[1:n]全部是逻辑“1”的位,则en2为低逻辑电平。本领域的普通技术人员可以理解,可以基于预选择的广播地址来使用任意的译码器逻辑配置,使得使能信号en2被驱至指示DA[1:n]和预选择的广播地址之间匹配的逻辑电平。
图13是根据另一个实施例的BA检测器516的电路示意图。在此实施例中,广播地址由存储器控制器动态分配并且保存在BA寄存器838中。在此实施例中,存储器控制器将用通过所选择的广播地址来加载BA寄存器838的命令来寻址每个存储器设备。此命令可以类似于图10中所示的“写CAW寄存器”命令。一旦加载,XOR逻辑840将BA寄存器的n位与所接收的设备地址DA[1:n]的n位相比较。如果所有位的位置匹配,则XOR逻辑840产生对应于设备地址DA[1:n]的n位位置和BA寄存器838的n位位置的比较结果的n个中间输出信号。当DA[1:n]的所有的地址位 匹配BA寄存器838的对应位时,AND逻辑842接收所有的n个中间输出信号以产生被驱至高逻辑电平的单个使能信号en2。
设备地址逻辑830和BA检测器516的先前所示的实施例使用当接收到匹配的设备地址或广播地址时提供高逻辑电平使能信号en1和en2的逻辑电路来实现。在替代的实施例中,可以使用反相逻辑,使得当接收到匹配的设备地址或广播地址时,使能信号en1和en2被驱至低逻辑电平。
因此,图3A和3B的***可以在设备地址已经被分配之前或之后用广播操作来寻址。当存储器控制器发出命令包时开始广播操作,并且当存储器控制器从***中的最后一个存储器设备接收其所发出的命令包时完成该广播操作。图14是用于在图3A和3B的***的所有存储器设备中执行广播操作的方法的流程图。在步骤850,当存储器控制器发出包括预设或分配的广播地址的命令包时,开始该***的广播方法,在此之后预设或分配的广播地址简称为广播地址。在步骤852,由***中的第一个存储器设备接收该命令包,存储器设备被称为存储器设备i,其中i是大于0的整数。当接收时,诸如图11的设备地址逻辑830的设备地址逻辑将所保存的广播地址与该命令包中的广播地址相匹配,或者其将译码该广播地址以确定其是否为有效广播地址。
在步骤854,当确定有效的或匹配的广播地址时,存储器设备被启用以执行命令包的操作码命令。在步骤856,命令包被传递到***中的后面的设备,其可能是后面的存储器设备或存储器控制器。从步骤858开始,当后面的设备是另一个存储器设备时,该方法循环返回步骤852。在步骤860,增加参数i,以指示由***中的下一个后面的存储器设备来执行步骤852、854和856。最后,当***中的最后一个存储器设备将命令包传递到存储器控制器时,该方法将从步骤858进行到步骤862。在步骤862,存储器控制器接收其起始发出的命令包,并且由于所有的存储器设备已经接收该命令包并且对该命令包起作用,所以广播操作有效地结束。因此,所有的存储器设备将执行来自存储器控制器的单个所发出的命令的操作。由于这不是在前一步骤完成后才开始一个步骤的情况,所以图14的步骤被严格地顺序地执行。对于图3A和3B的***,图14的弧线(arc)指示事件的逻辑或总体顺序并且不是事件的必需的实际顺序。由于每个步骤的持续时间可以比顺序步骤的开始之间的间隙更长,表示可以正在发生 多个步骤,并且它们甚至可以不按顺序来发生。例如,直到已经接收命令包的所有操作码位才开始步骤854。如果当前有效数据路径宽度是×1,则从该包的开始可以有许多时钟周期。但是,转送命令包到下一个设备(步骤856)几乎立刻开始。实际上,当具有窄的当前有效宽度和具有少量串行存储器设备的环的情况下,在第一设备已经接收全部的设备地址和操作码二者之前,在命令包开始时,可以已经通过环中所有的通路。
在图3A和3B的***中,通过确立命令选通输入CSI来实现命令的发出。CSI被用于当命令包流经串行存储器设备至输出端口Sout时控制出现在输入端口Sin的命令包的捕获,而且CSI的确立具有对应于所接收的命令包的长度的脉冲持续时间。由于存储器控制器的设计者仅需要确保CSI脉冲与所发出的命令包同步,因此,在本***的实施例中,用于由存储器控制器发出命令的协议是简单的。所发出的一些命令将指导所寻址的存储器设备提供输出数据。在预定量的时间之后,输出数据将准备好输出,意味着在内部存储器读出操作期间,读出数据已经被载入读出数据寄存器。串行存储器设备被认为是被选择的并准备好输出数据。在当前所述的***实施例中,用于执行读出操作的读出协议规定在具有读出命令包的CSI脉冲之后发出数据选通输入DSI脉冲。DSI被用于为Sout输出端口启用输出电路,诸如图6的数据I/O电路块506,以输出读出数据,并且具有对应于被请求的读出数据的长度的脉冲持续时间。更具体地,DSI脉冲将启用来自读出数据寄存器的数据以经由数据I/O电路块506通过Sout输出端口来按时钟输出。对于每个设备,假定CSO和DSO是CSI和DSI的时间偏移的形式,则使得环中的下一个设备可以适当地捕获命令和数据。
图15和16是说明存储器设备响应控制信号CSI、DSI和读出命令包执行有效读出操作的时序图。在图15中,CSI被脉冲控制所发出的读出命令包的持续时间。在解释输入读出命令的同时,其被发送到Sout端口。作为可选择的优化,一旦读出命令被识别为特定地寻址到当前设备(即,DA字节=ADA寄存器),则到环中的下一个设备的命令转送可以在任意合法的命令长度边界停止。读出命令包可以包括图10中列出的任意命令,其中一些类型的信息将从存储器设备读出。如果读出命令包被寻址到***中的最后一个存储器设备,则CSI脉冲和该读出命令包将传递通过每个居间的存储器设备,随后由最后一个存储器设备对其起作用。在存储器设备准备所传递的读出数据所必须的最小时间段之后,存储器控制器可 以发出DSI脉冲。此脉冲传递通过居间的存储器设备,并且仅由所选择的最后一个存储器设备对其起作用。对于与DSO的对应脉冲对准的DSI脉冲的持续时间,数据随后在所选择的最后一个存储器设备的Sout输出处按时钟输出。注意到,在相对于DSI的上升沿的延迟之后,提供该数据。在当前所述实施例中,此延迟是单个时钟周期,但是根据存储器设备的设计和配置可以是任意数量个时钟周期。对于命令和输出数据的转送,对应的CSO和DSO选通与Sout上的数据并发输出。
在图16中,CSI被脉冲控制所发出的读出命令包的持续时间,其中读出命令对应于例如突发读出命令。在存储器设备准备所传递的读出数据所必须的最小时间段之后,存储器控制器可以发出第一个DSI脉冲以启用所选择的存储器设备来输出读出数据的第一部分。通过将第一个DSI脉冲驱至低逻辑电平将其无效,以临时中断或暂停数据输出。例如可以为了适应其它的***操作来完成这个。则存储器控制器可以发出第二个DSI脉冲来启用所选择的存储器设备以输出读出数据的第二部分,其可以是保存在串行数据寄存器902中的数据的剩余部分。可以使第二个DSI脉冲无效,并且可以发出第三个DSI脉冲以完成对剩余数据的数据输出。根据当前所述的实施例,仅当如匹配的设备地址和适当的操作码字节所指示的,先前的CSI选通与对于所选择的存储器设备的读出命令相关时,所选择的存储器设备的Sout输出上的输出数据响应于所接收的DSI选通而被按时钟输出。在图15和16的时序中,至少一个DSI脉冲立刻跟随对读出命令的CSI脉冲。如果在寻址到当前串行存储器设备的任意非读出命令包或寻址到另一个串行存储器设备的任意命令包之后存储器控制器确立DSI有效,用于从所选择的存储器设备的存储器提供读出数据的输出电路被禁止提供任意读出数据。由于响应于DSI提供读出数据,对于到当前串行存储器设备的非读出命令包,存储器设备可以忽略被确立有效的CSI之后的任意DSI有效。在替代的实施例中,制定有效的DSI输入的规则可以是不同的。例如,如果命令协议允许非读出命令到一个设备以不干扰被选择用于数据输出的另一个设备,则DSI脉冲能够被引导到环中可能在其前面或者后面的环中的另一个串行存储器设备。在此情况中,在这样的DSI脉冲期间在Sin端口上接收的位需要被拷贝到Sout端口,使得不与存储器控制器和其它串行存储器设备之间的通信相接合。本领域的普通技术人员可以理解,各种命令协议可能具有不同的规则,用于忽略或转送CSI和DSI脉 冲和Sin的内容。
图17是示出可以在图6的存储器设备500中实现的数据输出控制逻辑和数据输出电路的电路示意图。数据输出控制逻辑是说明数据输出电路如何被停用或禁止提供内部读出数据的示例。本领域的普通技术人员可以理解,可以开发其它的逻辑结构用于获得相同的期望的结果。图17示出数据输出选择器900,串行数据寄存器902、读出数据输出控制器904和ID生成块905。在当前所述的实施例中,数据输出选择器900被实现在图6的每个数据I/O电路块506中,并且包括多路复用器906,其接收从串行数据寄存器902接收的内部读出数据RD_DATA,并且传递来自存储器设备的Sin输入端口经由锁存器907的数据P_DATA。多路复用器906将响应数据选择信号DSelect来传递P_DATA或RD_DATA。所选择的输出随后被输出驱动器908驱至输出端口Sout。传递数据P_DATA是由其它逻辑电路接收的数据的串行流,为了简化示意图其未被示出。这些其它电路将写数据传递到存储器阵列,并且传递命令数据到存储器设备的命令译码器。从多路复用器909提供RD_DATA,其响应于寄存器选择信号Rselect传递来自串行数据寄存器902的数据或来自ID生成块905的数据。响应于用于读出特定的寄存器的命令,从命令译码器提供寄存器选择信号Rselect。ID生成块905包括在图6、11、12和13中讨论的寄存器、用于提供状态信息的其它寄存器、和用于提供更新的ID号码的附加的逻辑电路。例如,当存储器设备被分配以ID号码,ID生成块905产生更新的ID号码,其在操作的ID产生阶段期间被传递到多路复用器909。随后,该更新的ID号码被传递通过多路复用器909和906并到达Sout上,用于下一个存储器设备。
串行数据寄存器902可以是图6的每个数据I/O电路块506或存储器核心508的部分,但是在当前所述的实施例中,串行数据寄存器902是存储器核心508的部分。串行数据寄存器902可以是响应于输入时钟的转变而串行输出数据的任意类型的数据寄存器。可以串行或并行地加载从存储器阵列M_DATA读出的数据。本领域的普通技术人员熟悉本领域公知的不同类型的串行寄存器,其可以用于图17。
读出数据输出控制器904负责在CSI和DSI控制信号的有效和无效时序期间控制串行数据寄存器902。读出数据输出控制器904包括锁存器910、AND逻辑电路912、914和916。锁存器910接收信号READ, 其响应于CSI的高逻辑电平而被锁存。应该注意,锁存器907和910二者是电平敏感锁存器。当所接收的命令被寻址到当前的串行存储器设备并且对应于任意类型的读出操作,READ信号被设置为高逻辑电平;但是当所接收的命令被寻址到另一个的串行存储器设备或者不是任意的所识别的读出操作,则其被设置为低逻辑电平。由于命令译码器将译码所接收的命令,用于所寻址的存储器设备来执行读出和写操作,READ的产生应该用公知的逻辑容易地获得。锁存器910的输出由AND逻辑电路912的第一输入端接收,其在其第二输入端接收内部时钟信号CLK。内部时钟信号CLK可以是响应于外部时钟在存储器设备的内部是同步的,或是外部时钟的缓冲的形式。AND逻辑电路912根据锁存器910的输出来传递CLK或低逻辑电平输出。
存储器设备的其它内部电路使用CLK,包括串行数据寄存器902用于按时钟输出所加载的数据。AND逻辑电路914具有用于接收AND逻辑电路912的输出的一个输入端,和用于接收DSI的另一个输入端。因此,当AND逻辑电路912传递CLK,且当DSI是高逻辑电平,CLK被传递到串行数据寄存器902。否则串行数据寄存器902的时钟输入保持在低逻辑电平。DSI被进一步用于控制多路复用器906。AND逻辑电路916具有用于接收DSI的一个输入端和用于接收使能信号EN的另一个输入端。在当前所述的实施例中,使能信号EN由图11中所示的设备地址逻辑830来提供,并且当存储器设备接收广播地址或匹配的设备地址时,其处于高逻辑电平。在当前所述的实施例中,当DSI和EN处于高逻辑电平,AND逻辑电路916将驱动其输出数据选择信号Dselect为高逻辑电平。在这些条件下,DSI已经被确立有效,并且命令包中的设备地址匹配存储器设备的设备地址。因此,Dselect将控制多路复用器906以传递RD_DATA。否则,当DSI未被确立且存储器设备不是所寻址的那个,则多路复用器906被控制来传递P_DATA。
图17的电路的操作参考图15的时序图简要地描述,以说明在DSI被确立有效期间的其操作。通过将CSI驱至高逻辑电平来首先确立CSI,并且在存储器设备的Sin输入端接收读出命令包。假设命令包寻址存储器设备以设置EN为高逻辑电平,并且存储器设备执行内部的读出操作以将读出数据M_DATA从存储器载入串行数据寄存器902。由于命令包是读出相关的命令,信号READ处于高逻辑电平。当CSI处于高逻辑电平, CLK被传递到AND逻辑电路914,但是禁止被耦合到串行数据寄存器902。此后,通过将DSI驱至高逻辑电平确立DSI。只要DSI到高逻辑电平,DSelect将控制多路复用器906以传递RD_DATA。当DSI是高逻辑电平,CLK被耦合到串行数据寄存器902,以通过多路复用器906按时钟输出所保存的数据到输出驱动器908。因此,在Sout输出端口提供的数据是来自存储器设备的有效的读出数据。在图16的情形中,其中DSI下降到低逻辑电平并且随后被再次确立有效,应该注意,当DSI下降到低逻辑电平,AND逻辑电路914将AND逻辑电路912的输出端从串行数据寄存器902解耦合。当DSI再次上升,CLK与串行数据寄存器902耦合,以继续串行数据输出。
图17的电路的操作参考图18至20的时序图简要的描述,以说明DSI被确立无效期间的其操作。在图18中,与不是读出相关命令的命令包相关联,使CSI确立,其中非读出命令对应于例如写命令,并且被寻址到存储器设备。因此,信号READ处于低逻辑电平,当CSI处于高逻辑电平时其被锁存。因此AND逻辑电路912将禁止CLK被传递到AND逻辑电路914。当随后DSI被确立有效,AND逻辑电路914将静态低逻辑信号传递到串行数据寄存器902。因此,由于CLK已经被AND逻辑电路912禁止,所以DSI将对串行数据寄存器902没有影响。因此RD_DATA将对应于保持在直接耦合到多路复用器906的串行数据寄存器902的第一寄存器电路中的数据。通过禁止来自串行数据寄存器902的DSI,阻止串行数据寄存器902中的任意可能的随机数据在Sout输出端口被确立有效。在一个实施例中,对于DSI脉冲的持续时间,Sout输出端口被静态地保持一个逻辑电平。因此,存储器控制器可以识别“0”或“1”的逻辑状态的连续序列,作为无效操作的结果,其为在基于非读出命令之后确立DSI。注意到,所寻址的存储器设备将执行非读出操作,例如为诸如写操作。
在图19中,与寻址到存储器设备的读出命令包相关联,首先使CSI确立。因此,以与对于图15的时序图先前所述相同的方式,将CLK耦合到AND逻辑电路914。同时,存储器设备将内部执行读出操作,并且用M_DATA加载串行数据寄存器902。与所发出的寻址到相同的存储器设备的非读出命令包相关联,再次使CSI确立,该非读出命令包例如为诸如写命令包。锁存器910将锁存READ为低逻辑电平,导致AND逻辑电路912禁止CLK耦合到AND逻辑电路914。当随后使DSI确立,DSelect将控制多路复用器906传递RD_DATA,但是AND逻辑电路914不接收CLK。从而,串行数据寄存器902被停用,并且不输出其内容,除了第一寄存器电路中所保存的数据的位之外。在当前所述的实施例中,因为命令译码器逻辑可以保持有效用于设置READ为高逻辑电平,所以非读出命令包被寻址到不同的存储器设备也没有关系。在这样的情况中,因为EN被设置为低逻辑电平,甚至当使DSI确立时,所以先前所寻址的存储器设备将不响应该命令,并且其多路复用器906被设置为传递P_DATA。在由非读出命令寻址的存储器设备中,其多路复用器906被设置为传递RD_DATA,但是其串行数据寄存器902将以对于图18所述情形的所述方式被停用。
在图20中,与寻址到存储器设备的读出命令包相关联,首先使CSI确立,其中读出命令对应于例如突发读出命令。因此,以与对于图15的时序图先前所述相同的方式,将CLK耦合到AND逻辑电路914。使用突发读出命令,在初始CSI选通之后,第一次使DSI确立。控制多路复用器906来传递RD_DATA,且串行数据寄存器902接收CLK以按时钟输出其保存的数据到Sout输出端口。在当前突发读出示例中,通过将DSI驱至低逻辑电平,使DSI未被确立,以临时中止或暂停数据输出。此情形与图16中所示的突发读出操作相同。但是,代替第二个确立有效的DSI脉冲,与非读出命令包相关联使DSI未被确立之后,使CSI确立,其中该命令对应于例如写操作。该非读出命令包可以寻址到任意存储器设备。在所有的存储器设备中,锁存器910将输出低逻辑电平到AND逻辑电路912,由此禁止CLK耦合到AND逻辑电路914,从而禁止CLK耦合到串行数据寄存器902。因此,所有的存储器设备忽略跟随对于非读出命令包的CSI确立有效的任意DSI确立有效。所寻址的存储器设备的Sout输出端口将静态地提供具有用于DSI脉冲的持续时间的一个逻辑电平的数据。
数据输出控制信号的有效和无效的发布,诸如在图3A和3B的***的当前所述的实施例中的DSI,可以被汇总到由每个存储器设备遵从的数据输出禁止算法实施例。更具体地,每个存储器设备的命令译码器遵从该数据输出禁止算法。图21是根据当前所述的实施例概述数据输出禁止算法的流程图。
当存储器设备接收为DSI或CSI的第一控制信号时,在步骤950开始该方法。如果在步骤952所接收的控制信号是具有对应命令的CSI信号,且如在步骤953所确定的,如果该命令被寻址到当前的串行存储器 设备,则该方法进行到步骤954。从步骤954,如果CMD是非读出操作,则该方法进行到步骤956以执行非读出操作。随后,存储器设备返回到步骤950,以等待下一个控制信号。返回到步骤954,如果所接收的CMD是读出相关的命令,则在步骤958执行读出操作,以准备读出数据用于输出。当接收到下一个控制信号,则该方法返回步骤950。如果下一个控制信号是确立的DSI,如果先前的命令选择该串行存储器设备,则该方法从步骤952经由步骤961进行到步骤962。步骤961验证命令的先前的设备地址是否匹配所分配的设备地址。在那种情况下,如果先前所接收的CMD对应于读出命令,则在步骤964响应于所接收的DSI来输出读出数据。如果下一个控制信号是另一个DSI,则方法返回到步骤964以输出其它的数据。此特定的循环可以继续用于任意数量个连续的确立有效的DSI控制信号,导致有效数据输出。
返回到其中在步骤958执行读出命令且另一个CSI与对应的非读出相关命令一起被接收的方案,该方法从步骤952进行到962,其中确定该命令是非读出相关的。则在步骤966中止数据输出操作。因此,在对应于非读出相关命令的CSI之后接收的任意确立有效的DSI将导致中止数据输出操作。因此,如果存储器控制器通过使DSI控制脉冲确立来发出无效的读出命令,则静态逻辑“0”或“1”数据流被返回到该存储器控制器。因此,存储器控制器可以识别此数据模式为无效命令的结果,并且不为主机***提供数据。在图19的情形中,由于在DSI确立有效之前通过发出非读出命令包中止原始的读出操作,所以存储器控制器可以再次发出第一读出命令包。
先前所述的具有存储器设备的***与现有技术的并行多点***相比在更高的速度下运行,由此提供较佳的性能。由于提供了更多的串行输入和输出数据端口,每个存储器设备的性能,并且接下来***的性能被进一步改进。如果存储器设备采用先前所述的可配置的数据宽度实施例,每个存储器设备是动态可配置的以便以最小有效数量个数据焊盘来操作,以减小功率消耗。通过在广播操作中从存储器控制器到所有的存储器设备的串行传播的单个命令的发出,存储器设备是可配置的。当存储器控制器不正确地发出读出输出控制信号时,通过执行数据输出禁止算法来确保***的稳健操作,其阻止有效的数据被提供到存储器控制器。这些前述的实施例可以彼此独立地或者在***的存储器设备或存储器控制器中相 互组合地实现。
可以对所述实施例进行一定的改变和修改。因此,上面所讨论的实施例应被认为是说明性的而非限制性的。
Claims (27)
1.一种存储器***,包括:
具有第一数量个输出端口的存储器控制器,所述存储器控制器提供命令以从所述第一数量个输出端口的一个输出端口存取最大数据宽度配置数据;和
具有用于保存所述最大数据宽度配置数据的输入/输出寄存器、第二数量个数据输入焊盘和第二数量个数据输出焊盘的存储器设备,所述存储器设备在所述第二数量个数据输入焊盘的一个数据输入焊盘处接收所述命令,并且从所述第二数量个数据输出焊盘的一个数据输出焊盘提供所述最大数据宽度配置数据,
其中,所述存储器控制器和所述存储器设备串行连接以形成环形拓扑结构。
2.权利要求1的存储器***,其中,所述最大数据宽度配置数据在所述输入/输出寄存器中是硬连线的。
3.权利要求1的存储器***,其中,所述存储器控制器包括第一数量个输入端口,用于从所述第一数量个输入端口的一个输入端口接收所述最大数据宽度配置数据。
4.权利要求1的存储器***,其中,所述第二数量个数据输入焊盘除了所述一个数据输入焊盘外全部被禁止,并且所述第二数量个数据输出焊盘除了所述一个数据输出焊盘外全部被禁止。
5.权利要求4的存储器***,其中,所述存储器设备包括用于保存从所述存储器控制器接收的配置码的当前有效宽度寄存器,所述配置码启用第三数量个数据输入焊盘和第三数量个数据输出焊盘。
6.权利要求5的存储器***,其中,所述第三数量小于或等于所述第二数量。
7.权利要求6的存储器***,其中,所述存储器设备包括密封在封装中的存储器晶片,所述封装具有第四数量个数据输入引脚和数据输出引脚。
8.权利要求7的存储器***,其中,最小公共数量个数据输入引脚电连接到最小公共数量个数据输入焊盘,所述最小公共数量为所述第二数量和所述第四数量的较小值。
9.权利要求8的存储器***,其中,所述第三数量在1和所述最小公共数量之间。
10.权利要求9的存储器***,进一步包括:将所述第一数量个输出端口电连接到所述第四数量个输入引脚的第五数量个导电轨道。
11.权利要求10的存储器***,其中,所述第三数量是所述最小公共数量和所述第五数量个导电轨道的较小值。
12.一种存储器设备,包括:
用于保存配置码的当前有效宽度寄存器;
用于从数据输入焊盘接收所述配置码的第一数据输入/输出电路块,所述数据输入/输出电路块传递所述配置码到所述当前有效宽度寄存器;和
响应保存在所述当前有效宽度寄存器中的所述配置码被选择性地启用的第二数据输入/输出电路块,
其中,所述存储器设备和存储器控制器串行连接以形成环形拓扑结构。
13.权利要求12的存储器设备,进一步包括用于保存最大数据宽度配置数据的输入/输出寄存器,所述最大数据宽度配置数据由所述第一数据输入/输出电路块通过数据输出焊盘来提供。
14.权利要求13的存储器设备,其中,所述当前有效宽度寄存器、所述第一数据输入/输出电路块、所述第二数据输入/输出电路块、所述输入/输出寄存器、所述数据输入焊盘和所述数据输出焊盘形成在密封在封装中的存储器晶片上。
15.权利要求14的存储器设备,其中,所述封装具体包括耦合到所述第一数据输入/输出电路块的一个数据输入引脚。
16.权利要求14的存储器设备,其中,所述封装包括耦合到所述第一数据输入/输出电路块的第一数据输入引脚,和耦合到所述第二数据输入/输出电路块的第二数据输入引脚。
17.权利要求15的存储器设备,其中,所述封装包括至少一个附加的数据输入引脚。
18.一种用于为具有与存储器控制器在环形拓扑中串行连接的至少一个存储器设备的***设置数据宽度的方法,包括:
存取保存在所述至少一个存储器设备中的配置数据,所述配置数据对应于所述至少一个存储器设备的最大数据宽度;
确定所有所述配置数据的最小数据宽度;和
在所述至少一个存储器设备中,设置在1和所述最小数据宽度之间的所选择的数据宽度。
19.权利要求18的方法,其中,所述存取包括为所述至少一个存储器设备分配标识号。
20.权利要求18的方法,其中,所述存取包括在对应于1的数据宽度的单个数据线上串行发出读出命令。
21.权利要求18的方法,其中,所述所选择的数据宽度由***的操作简档来确定。
22.权利要求21的方法,其中,通过将所选择的数据宽度设置为所述最小的数据宽度,所述操作简档对应于***的最大性能。
23.权利要求21的方法,其中,通过将所述所选择的数据宽度设置为1,所述操作简档对应于最小的功率消耗。
24.权利要求18的方法,其中,所述设置包括将对应于所述所选择的数据宽度的配置码加载到所述至少一个存储器设备的当前有效宽度寄存器。
25.权利要求24的方法,其中,所述设置包括发出寻址到所述至少一个存储器设备的命令,用于将所述配置码写到所述当前有效宽度寄存器。
26.权利要求24的方法,其中,所述***包括串联的多个存储器设备。
27.权利要求26的方法,其中,所述设置包括发出具有由所述多个存储器设备可识别的广播地址的命令,用于将所述配置码写到所述多个存储器设备中的每个的所述当前有效宽度寄存器。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US90200307P | 2007-02-16 | 2007-02-16 | |
US60/902,003 | 2007-02-16 | ||
US89270507P | 2007-03-02 | 2007-03-02 | |
US60/892,705 | 2007-03-02 | ||
US11/840,692 US7904639B2 (en) | 2006-08-22 | 2007-08-17 | Modular command structure for memory and memory system |
US11/840,692 | 2007-08-17 | ||
PCT/US2008/054307 WO2008101246A2 (en) | 2007-02-16 | 2008-02-19 | System having one or more memory devices |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101675478A CN101675478A (zh) | 2010-03-17 |
CN101675478B true CN101675478B (zh) | 2013-10-30 |
Family
ID=39690850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800123678A Expired - Fee Related CN101675478B (zh) | 2007-02-16 | 2008-02-19 | 具有一个或多个存储器设备的*** |
Country Status (8)
Country | Link |
---|---|
US (2) | US7904639B2 (zh) |
EP (1) | EP2126916A2 (zh) |
JP (1) | JP5408663B2 (zh) |
KR (2) | KR101476471B1 (zh) |
CN (1) | CN101675478B (zh) |
CA (1) | CA2676610A1 (zh) |
TW (1) | TW200849276A (zh) |
WO (1) | WO2008101246A2 (zh) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8407395B2 (en) * | 2006-08-22 | 2013-03-26 | Mosaid Technologies Incorporated | Scalable memory system |
US7904639B2 (en) * | 2006-08-22 | 2011-03-08 | Mosaid Technologies Incorporated | Modular command structure for memory and memory system |
US8086785B2 (en) | 2007-02-22 | 2011-12-27 | Mosaid Technologies Incorporated | System and method of page buffer operation for memory devices |
US8046527B2 (en) | 2007-02-22 | 2011-10-25 | Mosaid Technologies Incorporated | Apparatus and method for using a page buffer of a memory device as a temporary cache |
TW200951960A (en) * | 2008-06-12 | 2009-12-16 | Genesys Logic Inc | Flash memory control apparatus having sequential writing and method thereof |
US8139390B2 (en) * | 2008-07-08 | 2012-03-20 | Mosaid Technologies Incorporated | Mixed data rates in memory devices and systems |
US8130527B2 (en) | 2008-09-11 | 2012-03-06 | Micron Technology, Inc. | Stacked device identification assignment |
US10236032B2 (en) | 2008-09-18 | 2019-03-19 | Novachips Canada Inc. | Mass data storage system with non-volatile memory modules |
US8134852B2 (en) | 2008-10-14 | 2012-03-13 | Mosaid Technologies Incorporated | Bridge device architecture for connecting discrete memory devices to a system |
US7957173B2 (en) | 2008-10-14 | 2011-06-07 | Mosaid Technologies Incorporated | Composite memory having a bridging device for connecting discrete memory devices to a system |
US20100115172A1 (en) * | 2008-11-04 | 2010-05-06 | Mosaid Technologies Incorporated | Bridge device having a virtual page buffer |
US8549209B2 (en) * | 2008-11-04 | 2013-10-01 | Mosaid Technologies Incorporated | Bridging device having a configurable virtual page size |
US8880970B2 (en) * | 2008-12-23 | 2014-11-04 | Conversant Intellectual Property Management Inc. | Error detection method and a system including one or more memory devices |
JP5753988B2 (ja) * | 2008-12-18 | 2015-07-22 | ノヴァチップス カナダ インコーポレイテッド | エラー検出方法および1つまたは複数のメモリデバイスを含むシステム |
US8316201B2 (en) | 2008-12-18 | 2012-11-20 | Sandisk Il Ltd. | Methods for executing a command to write data from a source location to a destination location in a memory device |
US20100262979A1 (en) * | 2009-04-08 | 2010-10-14 | Google Inc. | Circular command queues for communication between a host and a data storage device |
US8205037B2 (en) | 2009-04-08 | 2012-06-19 | Google Inc. | Data storage device capable of recognizing and controlling multiple types of memory chips operating at different voltages |
US8595572B2 (en) * | 2009-04-08 | 2013-11-26 | Google Inc. | Data storage device with metadata command |
US8503211B2 (en) | 2009-05-22 | 2013-08-06 | Mosaid Technologies Incorporated | Configurable module and memory subsystem |
US8521980B2 (en) * | 2009-07-16 | 2013-08-27 | Mosaid Technologies Incorporated | Simultaneous read and write data transfer |
US8443263B2 (en) * | 2009-12-30 | 2013-05-14 | Sandisk Technologies Inc. | Method and controller for performing a copy-back operation |
KR101678868B1 (ko) * | 2010-02-11 | 2016-11-23 | 삼성전자주식회사 | 플래시 주소 변환 장치 및 그 방법 |
JP5259755B2 (ja) * | 2011-02-25 | 2013-08-07 | 株式会社東芝 | マルチチャネルを有するメモリ装置及び同装置におけるメモリアクセス方法 |
US9239806B2 (en) * | 2011-03-11 | 2016-01-19 | Micron Technology, Inc. | Systems, devices, memory controllers, and methods for controlling memory |
US8856482B2 (en) * | 2011-03-11 | 2014-10-07 | Micron Technology, Inc. | Systems, devices, memory controllers, and methods for memory initialization |
US8543758B2 (en) * | 2011-05-31 | 2013-09-24 | Micron Technology, Inc. | Apparatus including memory channel control circuit and related methods for relaying commands to logical units |
US8825967B2 (en) | 2011-12-08 | 2014-09-02 | Conversant Intellectual Property Management Inc. | Independent write and read control in serially-connected devices |
US9471484B2 (en) | 2012-09-19 | 2016-10-18 | Novachips Canada Inc. | Flash memory controller having dual mode pin-out |
US9760149B2 (en) | 2013-01-08 | 2017-09-12 | Qualcomm Incorporated | Enhanced dynamic memory management with intelligent current/power consumption minimization |
US9021154B2 (en) | 2013-09-27 | 2015-04-28 | Intel Corporation | Read training a memory controller |
US9690515B2 (en) * | 2013-10-25 | 2017-06-27 | Sandisk Technologies Llc | Delayed automation to maximize the utilization of read and write cache |
JP6541998B2 (ja) * | 2015-03-24 | 2019-07-10 | 東芝メモリ株式会社 | メモリデバイス、半導体装置および情報処理装置 |
DE102015214133A1 (de) * | 2015-07-27 | 2017-02-02 | Continental Automotive Gmbh | Integrierter Schaltkreis zum Betreiben an einem Bus und Verfahren zum Betreiben des integrierten Schaltkreises |
US9836232B1 (en) * | 2015-09-30 | 2017-12-05 | Western Digital Technologies, Inc. | Data storage device and method for using secondary non-volatile memory for temporary metadata storage |
JP2018032141A (ja) | 2016-08-23 | 2018-03-01 | 東芝メモリ株式会社 | 半導体装置 |
US20180060229A1 (en) * | 2016-08-31 | 2018-03-01 | Esab Ab | Techniques for implementing memory segmentation in a welding or cutting system |
KR102615775B1 (ko) * | 2017-01-31 | 2023-12-20 | 에스케이하이닉스 주식회사 | 반도체 장치 |
CN107239363B (zh) * | 2017-05-27 | 2020-04-24 | 北京东土军悦科技有限公司 | 一种ecc信息上报方法及*** |
TWI646546B (zh) * | 2017-08-11 | 2019-01-01 | 慧榮科技股份有限公司 | 資料儲存裝置以及記憶體讀取方法 |
KR102516584B1 (ko) * | 2018-11-21 | 2023-04-03 | 에스케이하이닉스 주식회사 | 메모리 시스템 |
US10761588B2 (en) * | 2018-08-09 | 2020-09-01 | Micron Technology, Inc. | Power configuration component including selectable configuration profiles corresponding to operating characteristics of the power configuration component |
CN109830252B (zh) * | 2018-12-29 | 2024-03-22 | 灿芯半导体(上海)股份有限公司 | 实现时钟周期的数字电路及实现四分之一时钟周期的方法 |
TWI813379B (zh) * | 2022-07-14 | 2023-08-21 | 瑞昱半導體股份有限公司 | 用於靜態隨機存取記憶體的輸出控制介面 |
CN117785733B (zh) * | 2024-01-31 | 2024-04-26 | 深圳市晶准通信技术有限公司 | 芯片控制方法、控制芯片及控制*** |
Family Cites Families (134)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2264395A (en) * | 1940-10-22 | 1941-12-02 | Bell Telephone Labor Inc | Power line carrier frequency telephone system |
US4174536A (en) * | 1977-01-21 | 1979-11-13 | Massachusetts Institute Of Technology | Digital communications controller with firmware control |
US4617566A (en) | 1983-12-15 | 1986-10-14 | Teleplex Corporation | Addressable-port, daisy chain telemetry system with self-test capability |
DE3586523T2 (de) * | 1984-10-17 | 1993-01-07 | Fujitsu Ltd | Halbleiterspeicheranordnung mit einer seriellen dateneingangs- und ausgangsschaltung. |
US4683555A (en) | 1985-01-22 | 1987-07-28 | Texas Instruments Incorporated | Serial accessed semiconductor memory with reconfigureable shift registers |
JPS62152050A (ja) * | 1985-12-26 | 1987-07-07 | Nec Corp | 半導体メモリ |
JPS63113624A (ja) * | 1986-10-30 | 1988-05-18 | Tokyo Electric Co Ltd | 電子秤のプリンタインタ−フエ−ス |
DE69030858T2 (de) * | 1989-03-15 | 1998-01-29 | Oki Electric Ind Co Ltd | Serielleingabe-parallelausgabe-umwandlungsschaltung |
US5226168A (en) | 1989-04-25 | 1993-07-06 | Seiko Epson Corporation | Semiconductor memory configured to emulate floppy and hard disk magnetic storage based upon a determined storage capacity of the semiconductor memory |
US5126808A (en) * | 1989-10-23 | 1992-06-30 | Advanced Micro Devices, Inc. | Flash EEPROM array with paged erase architecture |
US5175819A (en) * | 1990-03-28 | 1992-12-29 | Integrated Device Technology, Inc. | Cascadable parallel to serial converter using tap shift registers and data shift registers while receiving input data from FIFO buffer |
US5243703A (en) | 1990-04-18 | 1993-09-07 | Rambus, Inc. | Apparatus for synchronously generating clock signals in a data processing system |
US5204669A (en) | 1990-08-30 | 1993-04-20 | Datacard Corporation | Automatic station identification where function modules automatically initialize |
US5319598A (en) | 1990-12-10 | 1994-06-07 | Hughes Aircraft Company | Nonvolatile serially programmable devices |
US5132635A (en) | 1991-03-05 | 1992-07-21 | Ast Research, Inc. | Serial testing of removable circuit boards on a backplane bus |
US5249270A (en) * | 1991-03-29 | 1993-09-28 | Echelon Corporation | Development system protocol |
US5291584A (en) * | 1991-07-23 | 1994-03-01 | Nexcom Technology, Inc. | Methods and apparatus for hard disk emulation |
US5430859A (en) | 1991-07-26 | 1995-07-04 | Sundisk Corporation | Solid state memory system including plural memory chips and a serialized bus |
US6230233B1 (en) | 1991-09-13 | 2001-05-08 | Sandisk Corporation | Wear leveling techniques for flash EEPROM systems |
KR950000761B1 (ko) * | 1992-01-15 | 1995-01-28 | 삼성전자 주식회사 | 직렬 입력신호의 동기회로 |
US5398330A (en) * | 1992-03-05 | 1995-03-14 | Seiko Epson Corporation | Register file backup queue |
JP3088180B2 (ja) * | 1992-03-26 | 2000-09-18 | 日本電気アイシーマイコンシステム株式会社 | シリアル入力インタフェース回路 |
KR960000616B1 (ko) | 1993-01-13 | 1996-01-10 | 삼성전자주식회사 | 불휘발성 반도체 메모리 장치 |
US5519843A (en) | 1993-03-15 | 1996-05-21 | M-Systems | Flash memory system providing both BIOS and user storage capability |
JPH06266614A (ja) * | 1993-03-16 | 1994-09-22 | Hitachi Ltd | メモリ制御方法 |
JPH06275069A (ja) | 1993-03-20 | 1994-09-30 | Hitachi Ltd | シリアルメモリ |
US5365484A (en) * | 1993-08-23 | 1994-11-15 | Advanced Micro Devices, Inc. | Independent array grounds for flash EEPROM array with paged erase architechture |
JPH0793219A (ja) | 1993-09-20 | 1995-04-07 | Olympus Optical Co Ltd | 情報処理装置 |
US5602780A (en) * | 1993-10-20 | 1997-02-11 | Texas Instruments Incorporated | Serial to parallel and parallel to serial architecture for a RAM based FIFO memory |
US5452259A (en) * | 1993-11-15 | 1995-09-19 | Micron Technology Inc. | Multiport memory with pipelined serial input |
US5404460A (en) | 1994-01-28 | 1995-04-04 | Vlsi Technology, Inc. | Method for configuring multiple identical serial I/O devices to unique addresses through a serial bus |
US5596724A (en) * | 1994-02-04 | 1997-01-21 | Advanced Micro Devices | Input/output data port with a parallel and serial interface |
DE4429433C1 (de) | 1994-08-19 | 1995-10-26 | Siemens Ag | Adreßzuordnungsverfahren |
US5473566A (en) | 1994-09-12 | 1995-12-05 | Cirrus Logic, Inc. | Memory architecture and devices, systems and methods utilizing the same |
KR0142367B1 (ko) * | 1995-02-04 | 1998-07-15 | 김광호 | 열 리던던씨를 가지는 불휘발성 반도체 메모리의 소거 검증회로 |
US5636342A (en) | 1995-02-17 | 1997-06-03 | Dell Usa, L.P. | Systems and method for assigning unique addresses to agents on a system management bus |
US5729683A (en) * | 1995-05-18 | 1998-03-17 | Compaq Computer Corporation | Programming memory devices through the parallel port of a computer system |
US6728851B1 (en) | 1995-07-31 | 2004-04-27 | Lexar Media, Inc. | Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices |
US5835935A (en) * | 1995-09-13 | 1998-11-10 | Lexar Media, Inc. | Method of and architecture for controlling system data with automatic wear leveling in a semiconductor non-volatile mass storage memory |
JPH0991197A (ja) | 1995-09-22 | 1997-04-04 | Sharp Corp | データ転送制御装置 |
JP3693721B2 (ja) * | 1995-11-10 | 2005-09-07 | Necエレクトロニクス株式会社 | フラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法 |
TW307869B (en) * | 1995-12-20 | 1997-06-11 | Toshiba Co Ltd | Semiconductor memory |
KR100211760B1 (ko) * | 1995-12-28 | 1999-08-02 | 윤종용 | 멀티뱅크 구조를 갖는 반도체 메모리 장치의 데이타 입출력 경로 제어회로 |
KR0170723B1 (ko) * | 1995-12-29 | 1999-03-30 | 김광호 | 단일 ras 신호에 의해 동시 동작이 가능한 이중 뱅크를 갖는 반도체 메모리 장치 |
US5828899A (en) | 1996-01-04 | 1998-10-27 | Compaq Computer Corporation | System for peripheral devices recursively generating unique addresses based on the number of devices connected dependent upon the relative position to the port |
JPH09231740A (ja) * | 1996-02-21 | 1997-09-05 | Nec Corp | 半導体記憶装置 |
US5860080A (en) * | 1996-03-19 | 1999-01-12 | Apple Computer, Inc. | Multicasting system for selecting a group of memory devices for operation |
US5911053A (en) * | 1996-09-30 | 1999-06-08 | Intel Corporation | Method and apparatus for changing data transfer widths in a computer system |
US5941974A (en) * | 1996-11-29 | 1999-08-24 | Motorola, Inc. | Serial interface with register selection which uses clock counting, chip select pulsing, and no address bits |
KR100243335B1 (ko) | 1996-12-31 | 2000-02-01 | 김영환 | 독립적인 리프레쉬 수단을 가지는 데이지 체인 구조의 반도체 장치 |
KR100272037B1 (ko) * | 1997-02-27 | 2000-12-01 | 니시무로 타이죠 | 불휘발성 반도체 기억 장치 |
US6175891B1 (en) * | 1997-04-23 | 2001-01-16 | Micron Technology, Inc. | System and method for assigning addresses to memory devices |
JPH1145206A (ja) * | 1997-07-29 | 1999-02-16 | Casio Comput Co Ltd | 電子装置、メモリ起動方法及びメモリ起動プログラムを記録した記録媒体 |
GB2329792A (en) * | 1997-08-20 | 1999-03-31 | Nokia Telecommunications Oy | Identification signals enable a transceiver module to correctly configure itself to an attached functional module |
JPH1166841A (ja) | 1997-08-22 | 1999-03-09 | Mitsubishi Electric Corp | 半導体記憶装置 |
KR100240873B1 (ko) * | 1997-08-26 | 2000-01-15 | 윤종용 | 송수신 겸용의 레지스터를 갖는 직렬인터페이스장치 |
JP4039532B2 (ja) | 1997-10-02 | 2008-01-30 | 株式会社ルネサステクノロジ | 半導体集積回路装置 |
US6401167B1 (en) * | 1997-10-10 | 2002-06-04 | Rambus Incorporated | High performance cost optimized memory |
US5937425A (en) * | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
US6148364A (en) * | 1997-12-30 | 2000-11-14 | Netlogic Microsystems, Inc. | Method and apparatus for cascading content addressable memory devices |
JP3635899B2 (ja) * | 1997-11-25 | 2005-04-06 | セイコーエプソン株式会社 | 情報処理装置、その制御方法およびメモリアドレス変換装置 |
US6002638A (en) | 1998-01-20 | 1999-12-14 | Microchip Technology Incorporated | Memory device having a switchable clock output and method therefor |
US6453365B1 (en) * | 1998-02-11 | 2002-09-17 | Globespanvirata, Inc. | Direct memory access controller having decode circuit for compact instruction format |
WO1999045460A2 (en) | 1998-03-02 | 1999-09-10 | Lexar Media, Inc. | Flash memory card with enhanced operating mode detection and user-friendly interfacing system |
US6085290A (en) * | 1998-03-10 | 2000-07-04 | Nexabit Networks, Llc | Method of and apparatus for validating data read out of a multi port internally cached dynamic random access memory (AMPIC DRAM) |
US6144576A (en) | 1998-08-19 | 2000-11-07 | Intel Corporation | Method and apparatus for implementing a serial memory architecture |
US6295618B1 (en) | 1998-08-25 | 2001-09-25 | Micron Technology, Inc. | Method and apparatus for data compression in memory devices |
US5995417A (en) * | 1998-10-20 | 1999-11-30 | Advanced Micro Devices, Inc. | Scheme for page erase and erase verify in a non-volatile memory array |
JP4601737B2 (ja) | 1998-10-28 | 2010-12-22 | 株式会社東芝 | メモリ混載ロジックlsi |
JP2000149564A (ja) | 1998-10-30 | 2000-05-30 | Mitsubishi Electric Corp | 半導体記憶装置 |
US6304921B1 (en) | 1998-12-07 | 2001-10-16 | Motorola Inc. | System for serial peripheral interface with embedded addressing circuit for providing portion of an address for peripheral devices |
KR100284742B1 (ko) * | 1998-12-28 | 2001-04-02 | 윤종용 | 입출력 센스앰프의 개수가 최소화된 메모리장치 |
US7130958B2 (en) * | 2003-12-02 | 2006-10-31 | Super Talent Electronics, Inc. | Serial interface to flash-memory chip using PCI-express-like packets and packed data for partial-page writes |
US6111787A (en) | 1999-10-19 | 2000-08-29 | Advanced Micro Devices, Inc. | Address transistion detect timing architecture for a simultaneous operation flash memory device |
US6680904B1 (en) | 1999-12-27 | 2004-01-20 | Orckit Communications Ltd. | Bi-directional chaining of network access ports |
US7363422B2 (en) * | 2000-01-05 | 2008-04-22 | Rambus Inc. | Configurable width buffered module |
US7356639B2 (en) * | 2000-01-05 | 2008-04-08 | Rambus Inc. | Configurable width buffered module having a bypass circuit |
US20050160218A1 (en) | 2004-01-20 | 2005-07-21 | Sun-Teck See | Highly integrated mass storage device with an intelligent flash controller |
US6442098B1 (en) | 2000-02-08 | 2002-08-27 | Alliance Semiconductor | High performance multi-bank compact synchronous DRAM architecture |
US6988154B2 (en) | 2000-03-10 | 2006-01-17 | Arc International | Memory interface and method of interfacing between functional entities |
US6816933B1 (en) | 2000-05-17 | 2004-11-09 | Silicon Laboratories, Inc. | Serial device daisy chaining method and apparatus |
US6643728B1 (en) * | 2000-05-30 | 2003-11-04 | Lexmark International, Inc. | Method and apparatus for converting IEEE 1284 signals to or from IEEE 1394 signals |
US6535948B1 (en) * | 2000-05-31 | 2003-03-18 | Agere Systems Inc. | Serial interface unit |
US6317350B1 (en) | 2000-06-16 | 2001-11-13 | Netlogic Microsystems, Inc. | Hierarchical depth cascading of content addressable memory devices |
US6728798B1 (en) * | 2000-07-28 | 2004-04-27 | Micron Technology, Inc. | Synchronous flash memory with status burst output |
US6754807B1 (en) | 2000-08-31 | 2004-06-22 | Stmicroelectronics, Inc. | System and method for managing vertical dependencies in a digital signal processor |
US6317352B1 (en) | 2000-09-18 | 2001-11-13 | Intel Corporation | Apparatus for implementing a buffered daisy chain connection between a memory controller and memory modules |
US6853557B1 (en) | 2000-09-20 | 2005-02-08 | Rambus, Inc. | Multi-channel memory architecture |
US6658509B1 (en) | 2000-10-03 | 2003-12-02 | Intel Corporation | Multi-tier point-to-point ring memory interface |
US6889304B2 (en) * | 2001-02-28 | 2005-05-03 | Rambus Inc. | Memory device supporting a dynamically configurable core organization |
US6691205B2 (en) * | 2001-03-05 | 2004-02-10 | M-Systems Flash Disk Pioneers Ltd. | Method for using RAM buffers with simultaneous accesses in flash based storage systems |
JP4115676B2 (ja) | 2001-03-16 | 2008-07-09 | 株式会社東芝 | 半導体記憶装置 |
US20020161941A1 (en) * | 2001-04-30 | 2002-10-31 | Sony Corporation And Electronics, Inc | System and method for efficiently performing a data transfer operation |
US6996644B2 (en) | 2001-06-06 | 2006-02-07 | Conexant Systems, Inc. | Apparatus and methods for initializing integrated circuit addresses |
KR100413762B1 (ko) * | 2001-07-02 | 2003-12-31 | 삼성전자주식회사 | 뱅크 수를 가변할 수 있는 반도체 장치 및 그 방법 |
US6717847B2 (en) * | 2001-09-17 | 2004-04-06 | Sandisk Corporation | Selective operation of a multi-state non-volatile memory system in a binary mode |
US6456528B1 (en) * | 2001-09-17 | 2002-09-24 | Sandisk Corporation | Selective operation of a multi-state non-volatile memory system in a binary mode |
US6928501B2 (en) | 2001-10-15 | 2005-08-09 | Silicon Laboratories, Inc. | Serial device daisy chaining method and apparatus |
US6807106B2 (en) * | 2001-12-14 | 2004-10-19 | Sandisk Corporation | Hybrid density memory card |
US6763426B1 (en) | 2001-12-27 | 2004-07-13 | Cypress Semiconductor Corporation | Cascadable content addressable memory (CAM) device and architecture |
US6799235B2 (en) * | 2002-01-02 | 2004-09-28 | Intel Corporation | Daisy chain latency reduction |
CN1278239C (zh) * | 2002-01-09 | 2006-10-04 | 株式会社瑞萨科技 | 存储***和存储卡 |
US6754129B2 (en) * | 2002-01-24 | 2004-06-22 | Micron Technology, Inc. | Memory module with integrated bus termination |
US7043599B1 (en) * | 2002-06-20 | 2006-05-09 | Rambus Inc. | Dynamic memory supporting simultaneous refresh and data-access transactions |
US7062601B2 (en) | 2002-06-28 | 2006-06-13 | Mosaid Technologies Incorporated | Method and apparatus for interconnecting content addressable memory devices |
KR100499686B1 (ko) * | 2002-07-23 | 2005-07-07 | 주식회사 디지털웨이 | 메모리 확장 가능한 휴대용 플래쉬 메모리 장치 |
CA2396632A1 (en) | 2002-07-31 | 2004-01-31 | Mosaid Technologies Incorporated | Cam diamond cascade architecture |
KR100487539B1 (ko) | 2002-09-02 | 2005-05-03 | 삼성전자주식회사 | 직렬 에이티에이 케이블과 연결되는 불휘발성 반도체메모리 장치 |
US7032039B2 (en) | 2002-10-30 | 2006-04-18 | Atmel Corporation | Method for identification of SPI compatible serial memory devices |
KR100493884B1 (ko) | 2003-01-09 | 2005-06-10 | 삼성전자주식회사 | 시리얼 플래시 메모리에서의 현지 실행을 위한 제어 장치및 그 방법, 이를 이용한 플래시 메모리 칩 |
US7308524B2 (en) * | 2003-01-13 | 2007-12-11 | Silicon Pipe, Inc | Memory chain |
DE112004000821B4 (de) | 2003-05-13 | 2016-12-01 | Advanced Micro Devices, Inc. | System mit einem Hauptrechner, der mit mehreren Speichermodulen über eine serielle Speicherverbindung verbunden ist |
WO2005015406A1 (ja) * | 2003-08-06 | 2005-02-17 | Matsushita Electric Industrial Co., Ltd. | 半導体メモリカード、アクセス装置及びアクセス方法 |
US7073010B2 (en) * | 2003-12-02 | 2006-07-04 | Super Talent Electronics, Inc. | USB smart switch with packet re-ordering for interleaving among multiple flash-memory endpoints aggregated as a single virtual USB endpoint |
US7031221B2 (en) | 2003-12-30 | 2006-04-18 | Intel Corporation | Fixed phase clock and strobe signals in daisy chained chips |
CN100495369C (zh) | 2004-01-20 | 2009-06-03 | 特科2000国际有限公司 | 使用多个存储器设备的便携数据存储设备 |
US7475174B2 (en) | 2004-03-17 | 2009-01-06 | Super Talent Electronics, Inc. | Flash / phase-change memory in multi-ring topology using serial-link packet interface |
DE102004013493B4 (de) * | 2004-03-18 | 2009-11-05 | Infineon Technologies Ag | Zugriffs-Verfahren für einen NAND-Flash-Speicherbaustein und ein entsprechender NAND-Flash-Speicherbaustein |
US8375146B2 (en) * | 2004-08-09 | 2013-02-12 | SanDisk Technologies, Inc. | Ring bus structure and its use in flash memory systems |
US6950325B1 (en) | 2004-10-07 | 2005-09-27 | Winbond Electronics Corporation | Cascade-connected ROM |
EP1681770A1 (en) * | 2005-01-18 | 2006-07-19 | Koninklijke Philips Electronics N.V. | Error correcting code |
US8041879B2 (en) | 2005-02-18 | 2011-10-18 | Sandisk Il Ltd | Flash memory backup system and method |
JP2006236105A (ja) * | 2005-02-25 | 2006-09-07 | Canon Inc | アクセス制御装置及びその制御方法 |
US20060248305A1 (en) | 2005-04-13 | 2006-11-02 | Wayne Fang | Memory device having width-dependent output latency |
US20070076502A1 (en) | 2005-09-30 | 2007-04-05 | Pyeon Hong B | Daisy chain cascading devices |
TWI543185B (zh) | 2005-09-30 | 2016-07-21 | 考文森智財管理公司 | 具有輸出控制之記憶體及其系統 |
US7652922B2 (en) | 2005-09-30 | 2010-01-26 | Mosaid Technologies Incorporated | Multiple independent serial link memory |
US7496777B2 (en) * | 2005-10-12 | 2009-02-24 | Sun Microsystems, Inc. | Power throttling in a memory system |
US7631162B2 (en) * | 2005-10-27 | 2009-12-08 | Sandisck Corporation | Non-volatile memory with adaptive handling of data writes |
US8364861B2 (en) | 2006-03-28 | 2013-01-29 | Mosaid Technologies Incorporated | Asynchronous ID generation |
US8069328B2 (en) | 2006-03-28 | 2011-11-29 | Mosaid Technologies Incorporated | Daisy chain cascade configuration recognition technique |
US7506098B2 (en) * | 2006-06-08 | 2009-03-17 | Bitmicro Networks, Inc. | Optimized placement policy for solid state storage devices |
US7904639B2 (en) * | 2006-08-22 | 2011-03-08 | Mosaid Technologies Incorporated | Modular command structure for memory and memory system |
EP2074623A4 (en) | 2006-08-22 | 2010-01-06 | Mosaid Technologies Inc | MODULAR CONTROL STRUCTURE FOR A MEMORY AND A MEMORY SYSTEM |
-
2007
- 2007-08-17 US US11/840,692 patent/US7904639B2/en active Active
-
2008
- 2008-02-18 TW TW097105557A patent/TW200849276A/zh unknown
- 2008-02-19 JP JP2009550173A patent/JP5408663B2/ja not_active Expired - Fee Related
- 2008-02-19 CA CA002676610A patent/CA2676610A1/en not_active Abandoned
- 2008-02-19 EP EP08730166A patent/EP2126916A2/en not_active Withdrawn
- 2008-02-19 KR KR1020097019268A patent/KR101476471B1/ko not_active IP Right Cessation
- 2008-02-19 CN CN2008800123678A patent/CN101675478B/zh not_active Expired - Fee Related
- 2008-02-19 WO PCT/US2008/054307 patent/WO2008101246A2/en active Application Filing
- 2008-02-19 KR KR1020147023124A patent/KR101492383B1/ko not_active IP Right Cessation
-
2011
- 2011-01-28 US US13/016,396 patent/US20110131383A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
KR101476471B1 (ko) | 2014-12-24 |
KR20090115870A (ko) | 2009-11-09 |
JP5408663B2 (ja) | 2014-02-05 |
CA2676610A1 (en) | 2008-08-21 |
KR101492383B1 (ko) | 2015-02-12 |
WO2008101246A3 (en) | 2009-02-19 |
US7904639B2 (en) | 2011-03-08 |
KR20140119744A (ko) | 2014-10-10 |
EP2126916A2 (en) | 2009-12-02 |
WO2008101246A2 (en) | 2008-08-21 |
JP2010519626A (ja) | 2010-06-03 |
US20080052449A1 (en) | 2008-02-28 |
TW200849276A (en) | 2008-12-16 |
WO2008101246A8 (en) | 2009-05-28 |
US20110131383A1 (en) | 2011-06-02 |
CN101675478A (zh) | 2010-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101675478B (zh) | 具有一个或多个存储器设备的*** | |
US20230384935A1 (en) | Clock mode determination in a memory system | |
US8812768B2 (en) | System having one or more memory devices | |
US9977731B2 (en) | Bridging device having a configurable virtual page size | |
KR101507192B1 (ko) | 데이지-체인 메모리 구성 및 용법 | |
JP5753989B2 (ja) | 複数のメモリデバイスを有するシステムの状態表示 | |
US20040148482A1 (en) | Memory chain | |
US20100115172A1 (en) | Bridge device having a virtual page buffer | |
US20090198857A1 (en) | Selective broadcasting of data in series connected devices | |
JP2010524089A (ja) | バッファ装置と集積回路メモリ装置を含むメモリシステムトポロジ | |
US20090043946A1 (en) | Architecture for very large capacity solid state memory systems | |
US20090287896A1 (en) | Off-chip micro control and interface in a multichip integrated memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee |
Owner name: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC. Free format text: FORMER NAME: MOSAID TECHNOLOGIES INC. |
|
CP01 | Change in the name or title of a patent holder |
Address after: Ontario, Canada Patentee after: Examine Vincent Zhi Cai management company Address before: Ontario, Canada Patentee before: Mosaid Technologies Inc. |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131030 Termination date: 20160219 |
|
CF01 | Termination of patent right due to non-payment of annual fee |