CN106569967B - 双列直插式存储器模块固态硬盘片上系统及模拟方法 - Google Patents

双列直插式存储器模块固态硬盘片上系统及模拟方法 Download PDF

Info

Publication number
CN106569967B
CN106569967B CN201610810976.4A CN201610810976A CN106569967B CN 106569967 B CN106569967 B CN 106569967B CN 201610810976 A CN201610810976 A CN 201610810976A CN 106569967 B CN106569967 B CN 106569967B
Authority
CN
China
Prior art keywords
chip
memory modules
hard disk
solid state
dual inline
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.)
Active
Application number
CN201610810976.4A
Other languages
English (en)
Other versions
CN106569967A (zh
Inventor
克雷格·汉森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN106569967A publication Critical patent/CN106569967A/zh
Application granted granted Critical
Publication of CN106569967B publication Critical patent/CN106569967B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4093Input/output [I/O] data interface arrangements, e.g. data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Memory System (AREA)
  • Dram (AREA)

Abstract

公开一种双列直插式存储器模块(DIMM)固态硬盘(SSD)片上系统(SoC)及模拟方法。尽管DIMM SSD SoC不具有DIMM上的偏移,但是DIMM SSD SoC如同具有系统互连偏移和DIMM上的偏移的传统的动态随机存取存储器(DRAM)DIMM一样与主机存储器控制器进行交互操作。DIMM SSD SoC包括仿制传统的DRAM DIMM经历的并且主机存储器控制器预期的延迟或最小化系统信号完整性问题的更优延迟的可变延迟元件,从而提高最大系统速度。

Description

双列直插式存储器模块固态硬盘片上系统及模拟方法
本申请要求于2015年10月7日提交的第62/238,659号美国临时专利申请以及2015年12月17日提交的第14/973,720号美国临时专利申请的权益,所述美国临时专利申请出于所有目的通过引用包含于此。
技术领域
本发明构思涉及存储器,更具体地讲,涉及使用一种双列直插式存储器模块(DIMM)固态硬盘(SSD)来替代传统的DIMM。
背景技术
传统的双列直插式存储器模块(DIMM)包括搭载在信号衬底上的大量动态随机存取存储器(DRAM)元件。单个DRAM元件连接到通向存储器控制器的信号线,允许单个DRAM元件从存储器控制器接收数据并且将数据发送到存储器控制器。
DIMM也可从主机处理器接收时钟信号。然后时钟信号在DIMM内被传递每一个DRAM元件。时钟信号帮助指导DRAM元件何时发送数据或何时预期接收数据(因为这样的操作根据预定的调度(诸如,时钟信号的上升沿或下降沿)发生)。
但是即使DIMM不大而且信号以接近光的速度传播,信号也仍然花费可测的时间量来沿着DIMM传播。须知,光花费大约一纳秒(1ns)来传播一英尺。随着计算机每秒执行数十亿的操作,即使少量的时间也能对DIMM如何操作造成影响。不同的DRAM元件能在不同的时间接收它们的信号:即,DRAM元件接收交错的信号。与应用定义的板通道偏移结合的命令/地址/时钟总线上的JEDEC定义的Fly-By DIMM拓扑有助于当前存储器控制器必须解释的不同的命令地址到达。不同的DIMM设计可具有不同的板通道偏移。
存储器控制器被设计为对基于拓扑的不同的到达时间和合理的板通道偏移的范围进行处理。存储器控制器可执行训练以学习针对特定DIMM的板通道偏移究竟是多少并互连到DIMM。不同的存储器控制器对它们可承受的板通道偏移的多少具有不同的限制。但是所有的存储器控制器预期DIMM具有一些板通道偏移。
与传统的DIMM相比,DIMM固态硬盘(SSD)不具有多个DRAM元件。DIMM SSD只具有存储所有数据的一个芯片。作为结果,DIMM SSD没有命令/地址/时钟偏移:可同时读取和写入所有数据。但由于存储器控制器预期DIMM具有一些字节/半字节偏移,所以针对字节/半字节通道的更加一致的启动时间会引入噪声并影响系统的操作。
仍需要一种允许在能预期板通道偏移的存储器控制器的情况下使用DIMM SSD的方法。
发明内容
提供本发明内容以采用简化形式介绍将在以下具体实施方式中被进一步描述的构思的选择。本发明内容不意在确定要求保护的主题的关键特征或必要特征,也不意在用来帮助确定要求保护的主题的范围。
根据本发明构思的实施例的一方面,一种双列直插式存储器模块(DIMM)固态硬盘(SSD)片上系统(SoC),包括:控制器芯片;第一接口,用于在主机处理器与控制器芯片之间传输信号;多个数据组,所述多个数据组中的每一个数据组存储组的一部分信息;第二接口,用于在主机处理器与所述多个数据组之间传输信息;多个可变延迟元件;第一电路,用于将控制器芯片连接到所述多个可变延迟元件中的每一个可变延迟元件;第二电路,用于将所述多个可变延迟元件中的每一个可变延迟元件与所述多个数据组中的一个数据组连接,其中,所述多个可变延迟元件中的每一个可变延迟元件被配置为重现表示Fly-By DIMM拓扑的选择的偏移延迟。
所述多个数据组中的每一个数据组可包括字节信息,并且所述多个数据组可模拟x8DRAM结构。
所述多个数据组中的每一个数据组还可包括半字节信息,并且所述多个数据组还可模拟x4DRAM结构。
所述多个可变延迟元件可被静态地配置为重现选择的偏移延迟。
所述多个可变延迟元件还可被动态地配置为重现选择的偏移延迟。
所述多个可变延迟元件可将时钟信号延迟到所述多个数据组。
所述多个数据组可从所述多个可变延迟元件接收交错的时钟信号。
所述多个可变延迟元件可将发送数据信号延迟到所述多个数据组。
所述多个数据组可从所述多个可变延迟元件接收交错的发送数据信号。
根据本发明构思的实施例的另一方面,一种模拟DIMM的方法,包括:探测双列直插式存储器模块(DIMM);确定DIMM中的与组中的通道关联的多个延迟;构造具有所述多个延迟的DIMM固态硬盘(SSD)片上系统(SoC),以使用DIMM SSD SoC模拟DIMM。
构造具有所述多个延迟的DIMM SSD SoC的步骤可包括:构造DIMM SSD SoC以在所述组中的多个数据组上重现所述多个延迟。
构造DIMM SSD SoC以在所述组中的多个数据组上重现所述多个延迟的步骤可包括:对多个可变延迟元件中的每一个可变延迟元件的延迟持续时间进行编程,所述多个可变延迟元件中的每一个可变延迟元件连接到所述多个数据组中的一个数据组。
构造DIMM SSD SoC以在所述组中的多个数据组上重现所述多个延迟的步骤还可包括:构造DIMM SSD SoC以在多个时钟信号上重现所述多个延迟,所述多个时钟信号中的每一个时钟信号进入到所述多个数据组中的一个数据组。
构造DIMM SSD SoC以在多个时钟信号上重现所述多个延迟的步骤可包括:构造DIMM SSD SoC以将所述多个时钟信号交错到所述多个数据组。
构造DIMM SSD SoC以在所述组中的多个数据组上重现所述多个延迟的步骤还可包括:构造DIMM SSD SoC以在多个发送数据信号上重现所述多个延迟,所述多个发送数据信号中的每一个发送数据信号进入到所述多个数据组中的一个数据组。
构造DIMM SSD SoC以在多个发送数据信号上重现所述多个延迟的步骤可包括:构造DIMM SSD SoC以将所述多个发送数据信号交错到所述多个数据组。
其他特征和方面将从以下详细描述、附图和权利要求而清楚。
附图说明
图1A和图1B示出现有技术的双列直插式存储器模块(DIMM)。
图2A示出时钟信号和不具有板通道偏移的理想化的存储器芯片信号。
图2B示出时钟信号和具有板通道偏移的存储器芯片信号。
图3示出根据本发明构思的实施例的能支持DIMM固态硬盘(SSD)片上系统(SoC)的使用的系统。
图4示出图3的DIMM SSD SoC的细节。
图5示出图4的可变延迟元件的细节。
图6A至图6B示出根据本发明构思的实施例的对图3的DIMM SSD SoC中的图4的可变延迟元件进行编程以模拟DIMM的过程的流程图。
图7示出能使用如以上参照图2A至图6B描述的DIMM SSD SoC的装置。
具体实施方式
现在将对本发明构思的实施例做出详细参考,本发明构思的实施例的示例在附图中示出。在下面的详细描述中,阐述大量的具体细节来实现对本发明构思的彻底理解。然而,应该理解,本领域的普通技术人员可以在没有这些具体细节的情况下实施本发明构思。在其他的示例中,没有详细描述公知的方法、过程、组件、电路和网络,以免不必要地模糊实施例的方面。
将理解,尽管术语第一、第二等可在此被用于描述各种元件,但是这些元件不应该被这些术语所限制。这些术语仅用于将一个元件与另一个元件区分。例如,在不脱离本发明构思的范围的情况下,第一模块可以被称为第二模块,并且类似地,第二模块可以被称为第一模块。
这里在本发明构思的描述中使用的术语仅用于描述特定实施例的目的,而不意图限制本发明构思。如在本发明构思和权利要求的描述中所使用的,除非上下文另外明确指示,否则单数形式也意图包括复数形式。还将理解,如在此所使用的术语“和/或”表示并且包含一个或多个相关所列项的任何和所有可能组合。还将理解,当在本说明书中使用术语“包括”和/或“包含”时,说明存在所陈述的特征、整体、步骤、操作、元件和/或组件,但是不排除存在或添加一个或多个其他的特征、整体、步骤、操作、元件、组件和/或它们的组合。附图的组件和特征不必按比例绘制。
图1A和图1B示出现有技术的双列直插式存储器模块(DIMM)。在图1A中,示出无寄存器的DIMM(unregistered DIMM)105。因为无寄存器的DIMM 105在动态随机存取存储器(DRAM)模块与主机存储器控制器之间缺少寄存器,所以无寄存器的DIMM 105有时被称为无缓冲的DIMM 105。无寄存器的DIMM 105包括多个DRAM模块(诸如,DRAM模块110、DRAM模块115和DRAM模块120)。
一个或多个通道125(针对诸如时钟信号的信号)可连接主机存储器控制器与DRAM模块110、DRAM模块115和DRAM模块120。如在图1A中可见,通道125从主机存储器控制器行进到DRAM模块110,然后到DRAM模块115,然后到DRAM模块120等。本领域技术人员将认识到,图1A仅仅是示例无寄存器的存储器105,而且无寄存器的存储器105的其他设计是可能的。
与图1A进行比较,图1B示出有寄存器的存储器130。有寄存器的存储器130像图1A的无寄存器的存储器105一样包括DRAM模块110、DRAM模块115和DRAM模块120。但是有寄存器的存储器130还包括寄存器135。寄存器135可充当主机存储器控制器与DRAM模块110、DRAM模块115和DRAM模块120之间的缓冲器。
与通道125按顺序将主机控制器与所有的DRAM模块进行连接的图1A相反,在图1B中,通道140将寄存器135与DRAM模块中的一些DRAM模块进行连接,而通道145将寄存器135与其他的DRAM模块进行连接。本领域技术人员将认识到,图1B仅仅是示例有寄存器的存储器130,而且有寄存器的存储器130的其他设计是可能的。
无寄存器的存储器105和有寄存器的存储器130两者的一个共同要素是多个DRAM模块110、DRAM模块115和DRAM模块120的存在,而且信号必须沿着通道125、通道140和通道145行进不同长度,以到达DRAM模块110、DRAM模块115和DRAM模块120。因为信号行进不同的长度,所以信号在不同的时间到达DRAM模块110、DRAM模块115和DRAM模块120。这个事实导致DIMM 105和DIMM 130内的字节/半字节偏移。
图2A示出时钟信号和不具有板通道偏移的理想化的存储器芯片信号。在图2A中,示出时钟信号205和存储器芯片信号210。存储器芯片信号210意图表示时钟信号205到达存储器芯片,其中,时间沿着水平维度。在理想的世界中,存储器芯片信号210与时钟信号205完美地同步。
不幸的是,真实世界不是理想的世界。如以上参照图1A至图1B所提到的,信号必须沿着图1A的无寄存器的DIMM 105中的图1A的通道125,和沿着图1B的有寄存器的DIMM 130中的图1B的通道140和通道145行进不同的长度。作为结果,信号在不同的时间到达DRAM模块110、DRAM模块115和DRAM模块120。
图2B示出时钟信号和具有系统互连和DIMM偏移的存储器芯片信号。在图2B中,每个存储器芯片信号215、存储器芯片信号220、存储器芯片信号225和存储器芯片信号230相对于时钟信号205偏移。(通常,成对的存储器芯片信号也偏移。)
因为信号没有与时钟信号205同步到达存储器芯片,所以主机存储器控制器必须训练自己,以确定存储器芯片信号215、存储器芯片信号220、存储器芯片信号225和存储器芯片信号230究竟偏移多少。主机控制器训练自己学习与每个存储器芯片相关的偏移的过程是容易理解的过程。
图3示出根据本发明构思的实施例的能支持DIMM固态硬盘(SSD)片上系统(SoC)的使用的系统。在图3中,示出计算机系统305。计算机系统305被示出为包括计算机310、显示器315、键盘320和鼠标325。本领域技术人员将认识到,其他组件可被包括在计算机系统305内:例如,可包括诸如打印机的其他输入/输出装置。此外,计算机系统305可包括常规内部组件(诸如,具有集成的主机存储器控制器335的主机处理器330和存储器340等)。虽然未在图3中示出,但是本领域技术人员将认识到,计算机系统305可包括其他内部组件(诸如,其他显卡、调制解调器等)。此外,本领域技术人员将认识到,计算机系统305可直接地或通过任意类型的网络(未示出)与其他计算机系统进行交互。最后,虽然图3将计算机系统305示出为常规台式计算机,但是本领域技术人员将认识到,计算机系统305可以是包括例如其他可能性中的膝上型计算机、平板计算机、个人数字助理(PDA)或智能电话的任意类型的机器或计算装置。
计算机系统305也可包括DIMM SSD SoC 345。与传统的DIMM模块(诸如,包括多个芯片以存储信息的DRAM)相反,DIMM SSD SoC 345可包括单个芯片以存储全部信息。因为全部信息被存储在单个芯片上,所以避免影响传统的DIMM模块的板通道偏移。但是,如上所提到的,由于主机存储器控制器335预期存储器具有板通道偏移,因此DIMM SSD SoC 345中的板通道偏移的缺少可阻止DIMM SSD SoC 345与主机存储器控制器335的恰当的交互操作。
图4示出图3的DIMM SSD SoC 345的细节。在图4中,DIMM SSD SoC345被示出为包括:时钟/命令/地址接收模块402;各种数据组404、数据组406、数据组408、数据组410、数据组412、数据组414、数据组416、数据组418和数据组420;各种可变延迟元件422、可变延迟元件424、可变延迟元件426、可变延迟元件428、可变延迟元件430、可变延迟元件432、可变延迟元件434、可变延迟元件436和可变延迟元件438。DIMM SSD SoC 345还可包括:接口440,使得图3的主机处理器330和主机存储器控制器335与时钟/命令/地址接收模块402进行通信;接口442、接口444、接口446、接口448、接口450、接口452、接口454、接口456和接口458,允许在图3的主机处理器330和主机存储器控制器335与数据组404、数据组406、数据组408、数据组410、数据组412、数据组414、数据组416、数据组418和数据组420之间交换数据(诸如,数据读取和写入信息)。最后,DIMM SSD SoC 345还可包括:电路460、电路462、电路464、电路466、电路468、电路470、电路472、电路474、电路476、电路478、电路480、电路482、电路484、电路486、电路488、电路490、电路492和电路494,用于连接时钟/命令/地址接收模块402、可变延迟元件422、可变延迟元件424、可变延迟元件426、可变延迟元件428、可变延迟元件430、可变延迟元件432、可变延迟元件434、可变延迟元件436和可变延迟元件438、以及数据组404、数据组406、数据组408、数据组410、数据组412、数据组414、数据组416、数据组418和数据组420。
可变延迟元件422、可变延迟元件424、可变延迟元件426、可变延迟元件428、可变延迟元件430、可变延迟元件432、可变延迟元件434、可变延迟元件436和可变延迟元件438使得数据组404、数据组406、数据组408、数据组410、数据组412、数据组414、数据组416、数据组418和数据组420像图1A至图1B的DRAM模块110、DRAM模块115和DRAM模块120一样运转。即,可变延迟元件422、可变延迟元件424、可变延迟元件426、可变延迟元件428、可变延迟元件430、可变延迟元件432、可变延迟元件434、可变延迟元件436和可变延迟元件438延迟时钟信号、发送数据信号和其他信号到数据组404、数据组406、数据组408、数据组410、数据组412、数据组414、数据组416、数据组418和数据组420的传输,以便信号被数据组404、数据组406、数据组408、数据组410、数据组412、数据组414、数据组416、数据组418和数据组420以交错的方式接收,正如具有DRAM模块的传统的DIMM一样。以这种方式,DIMM SSD SoC 345可表示标准Fly-By拓扑,因此提供更好的信号分布以减少信号完整性问题并提高解决方案将运行的最大总线频率。
虽然图4示出表示数据的字节的组(由数据组404、数据组406、数据组408、数据组410、数据组412、数据组414、数据组416、数据组418和数据组420组成),但是本示例仅表示本发明构思的一个实施例。本发明构思的其他实施例可存储其他大小(诸如,半字节、字、双字或任何其他期望的大小)的数据的组。
图5示出图4的示例可变延迟元件422的细节。在图5中,示出可变延迟元件422:可变延迟元件424、可变延迟元件426、可变延迟元件428和可变延迟元件430可被类似地设计并具有类似的功能。可变延迟元件422可包括存储器元件505、延迟测量单元510和发送器515。存储器元件505可存储表示针对可变延迟元件422的期望的延迟持续时间的延迟持续时间520。延迟测量单元510可测量自从可变延迟元件422接收到适当的信号(诸如,时钟信号或发送数据信号)起已过去多少时间。当延迟测量单元510已测量适当的延迟(与存储在存储器元件505中的延迟持续时间520相比)时,发送器515可沿着电路向特定数据组(诸如,图4的数据组404)发送适当的信号。
虽然延迟测量单元510被描述为测量已过去多少“时间”,但是本发明构思的实施例不限于以秒或秒的片断(例如,一纳秒(1ns))为单位测量时间。本发明构思的实施例可包括测量时间的任意方式。例如,延迟测量单元510可测量时钟周期的数量,或甚至时钟周期的片断,以重现使用DRAM模块的传统DIIM中的信号的交错传送。(由于不同的机器能以不同的速度运行,所以时钟周期是多长可取决于所讨论的机器。但是时钟周期当然是测量时间的一种方式。)
图6A至图6B示出根据本发明构思的实施例的对图3的DIMM SSD SoC中的图4的可变延迟元件进行编程以模拟DIMM的过程的流程图。可变延迟元件可静态地或动态地重现板通道偏移。在图6A中,在方框605,DIMM SSD SoC 345的制造商可探测传统的DIMM(诸如,图1A至图1B的DIMM 105和DIMM 130),以确定与图1A至图1B的DIMM 105和DIMM 130的通道关联的板通道偏移。在方框610,制造商可确定与图1A至图1B的DIMM 105和DIMM 130的通道关联的延迟。在方框615,制造商可对DIMM SSD SoC 345进行“编程”,以仿制与图1A至图1B的DIMM 105和DIMM 130关联的DIMM上的偏移。
在图6B中示出制造商可如何对DIMM SSD SoC 345进行“编程”。在方框620,制造商可确定是否存在需要“编程”的任何可变延迟元件422、可变延迟元件424、可变延迟元件426、可变延迟元件428、可变延迟元件430、可变延迟元件432、可变延迟元件434、可变延迟元件436和可变延迟元件438。如果是,那么在方框625,制造商可选择可变延迟元件422、可变延迟元件424、可变延迟元件426、可变延迟元件428、可变延迟元件430、可变延迟元件432、可变延迟元件434、可变延迟元件436和可变延迟元件438中的一个可变延迟元件,并且在方框630,制造商可对可变延迟元件422、可变延迟元件424、可变延迟元件426、可变延迟元件428、可变延迟元件430、可变延迟元件432、可变延迟元件434、可变延迟元件436和可变延迟元件438进行编程。
在图6A至图6B的上下文中,“编程”可意味着:安装提供期望的延迟的特定的可变延迟元件(其中,特定的可变延迟元件被设计为提供特定的延迟),或指导一般的可变延迟元件使用什么水平的延迟(例如,在其他可能性中,通过对可编程只读存储器(PROM)的一些变型进行编码)。“编程”不应被唯一地解释为可在处理器上执行的软件代码。
在图6A至图6B中,示出本发明构思的一个实施例。但是本领域技术人员将认识到,通过改变方框的顺序、通过省略方框或通过包括未在附图中示出的连接,本发明构思的其他实施例也是可能的。无论是否清楚地描述,流程图的所有这样的变化都被视为本发明构思的实施例。
以下讨论意图提供可实现本发明构思的一些方面的合适的机器的简洁、一般性的描述。参照图7,通常,机器205包括可包括能被用于协调机器205的组件的操作的存储器控制器335和时钟705的一个或多个处理器330。也可将处理器330结合到存储器345,除DIMMSSD SoC 345之外,存储器345可包括随机存取存储器(RAM)、只读存储器(ROM)或其他状态保存介质作为示例。也可将处理器330结合到存储装置340和网络连接器710(例如,可以是以太网连接器)。也可将处理器330连接到总线715,总线715可被附连到其他组件中的可使用输入/输出引擎725进行管理的用户接口720和输入/输出接口端口。
机器可通过来自常规输入装置(诸如,键盘、鼠标等)的输入以及通过从另一机器接收的指令、与虚拟现实(VR)环境的交互、生物识别反馈或其他输入信号被至少部分地控制。如在此所使用的,术语“机器”意在广泛包括单个机器、虚拟机器或一起操作的通信地结合的机器、虚拟机器或装置的系统。示例性机器包括计算装置(诸如,个人计算机、工作站、服务器、便携式计算机、手持装置、电话、平板等)以及运输装置(诸如,私有或公共交通工具(例如,汽车、火车、出租车等))。
机器可包括嵌入式控制器(诸如,可编程或不可编程的逻辑装置或阵列)、专用集成电路(ASIC)、嵌入式计算机、智能卡等。机器可使用一个或多个连接(诸如通过网络接口、调制解调器或其他通信结合)来连接到一个或多个远程机器。机器可通过物理和/或逻辑网络(诸如,内联网、互联网、局域网、广域网等)的方式互相连接。本领域技术人员将理解,网络通信可使用各种有线和/或无线近程或远程载波和协议,包括射频(RF)、卫星、微波、电气与电子工程师协会(IEEE)802.11、光纤、红外线、电缆、激光等。
可通过参考或结合关联的数据来描述本发明构思的实施例,其中,关联的数据包括当由机器访问时导致所述机器执行任务或者定义抽象数据类型或低级硬件环境的函数、程序、数据结构、应用程序等。例如,关联的数据可被存储在易失性和/或非易失性存储器(例如,RAM、ROM等)中或其他存储装置和它们的关联的存储介质(包括硬盘、软盘、光存储器、磁带、闪存、记忆棒、数字视频盘、生物存储器等)中。关联的数据可以以数据包、串行数据、并行数据、传播信号等的形式通过传输环境(包括物理和/或逻辑网络)被传送,并可以以压缩或加密格式被使用。关联的数据可被用于分布式环境,并被本地存储和/或远程存储以便机器访问。
本发明构思的实施例可以包括有形的、非暂时性机器可读介质,所述介质包括由一个或多个处理器执行的指令,所述指令包括用于执行在此描述的本发明构思的要素的指令。
已经参考示出的实施例描述和示出了本发明构思的原理,将认识到,在不脱离这些原理的情况下,可以在布置和细节上修改示出的实施例,并且可以以任何期望的方式组合示出的实施例。而且,尽管前面的讨论集中于特定的实施例,但是也预期其他配置。具体地讲,即使这里使用了诸如“根据本发明构思的实施例”等的表述,但这些短语是为了整体参考实施例的可能性,并不意在将本发明构思限制到特定的实施例配置。如这里所使用的,这些术语可参考可组合到其他实施例的相同或者不同的实施例。
上述说明性实施例将不被解释为限制本发明构思。虽然已经描述了一些实施例,但本领域技术人员将容易理解,在实质上不脱离本公开的新颖性教导和优点的情况下,可以对那些实施例作出许多修改。因此,所有这样的修改意在被包括于在权利要求限定的本发明构思的范围内。
本发明构思的实施例可以无限制的延伸到以下声明:
声明1:本发明构思的实施例包括一种双列直插式存储器模块(DIMM)固态硬盘(SSD)片上系统(SoC),包括:
控制器芯片;
第一接口,用于在主机处理器与控制器芯片之间传输信号;
多个数据组,每个数据组能够存储组的一部分信息;
第二接口,用于在主机处理器与所述多个数据组之间发送信息;
多个可变延迟元件;
第一电路,将控制器芯片连接到所述多个可变延迟元件中的每一个可变延迟元件;
第二电路,用于将所述多个可变延迟元件中的每一个可变延迟元件与所述多个数据组中的一个数据组连接,
其中,所述多个可变延迟元件中的每一个可变延迟元件可被配置为重现表示Fly-By DIMM拓扑的选择的偏移延迟。
声明2:本发明构思的实施例包括根据声明1的DIMM SSD SoC,其中,所述多个可变延迟元件中的每一个可变延迟元件包括:
存储器元件,用于存储延迟持续时间;
延迟测量单元,用于测量延迟持续时间;
发送器,用于在延迟测量单元已测量延迟持续时间之后发送信号。
声明3:本发明构思的实施例包括根据声明2的DIMM SSD SoC,其中:
存储器元件操作性地存储按照时钟周期测量的延迟持续时间;
延迟测量单元操作性地测量时钟周期的数量。
声明4:本发明构思的实施例包括根据声明1的DIMM SSD SoC,其中,
所述多个数据组中的每一个数据组包括字节信息;
所述多个数据组模拟x8DRAM结构。
声明5:本发明构思的实施例包括根据声明1的DIMM SSD SoC,其中,
所述多个数据组中的每一个数据组包括半字节信息;
所述多个数据组模拟x4DRAM结构。
声明6:本发明构思的实施例包括根据声明1的DIMM SSD SoC,其中,所述多个可变延迟元件可被静态地配置为重现选择的偏移延迟。
声明7:本发明构思的实施例包括根据声明1的DIMM SSD SoC,其中,所述多个可变延迟元件可被动态地配置为重现选择的偏移延迟。
声明8:本发明构思的实施例包括根据声明1的DIMM SSD SoC,其中,所述多个可变延迟元件将时钟信号延迟到所述多个数据组。
声明9:本发明构思的实施例包括根据声明8的DIMM SSD SoC,其中,所述多个数据组可从所述多个可变延迟元件接收交错的时钟信号。
声明10:本发明构思的实施例包括根据声明1的DIMM SSD SoC,其中,所述多个可变延迟元件可将发送数据信号延迟到所述多个数据组。
声明11:本发明构思的实施例包括根据声明10的DIMM SSD SoC,其中,所述多个数据组可从所述多个可变延迟元件接收交错的发送数据信号。
声明12:本发明构思的实施例包括一种方法,包括:
探测双列直插式存储器模块(DIMM);
确定在DIMM中的与组中的通道关联的多个延迟;
构造具有所述多个延迟的DIMM固态硬盘(SSD)片上系统(SoC),以使用DIMM SSDSoC来模拟DIMM。
声明13:本发明构思的实施例包括根据声明12的方法,其中,构造具有所述多个延迟的DIMM SSD SoC的步骤包括:构造DIMM SSD SoC以在所述组中的多个数据组上重现所述多个延迟。
声明14:本发明构思的实施例包括根据声明13的方法,其中,构造DIMM SSD SoC以在所述组中的多个数据组上重现所述多个延迟的步骤包括:对多个可变延迟元件中的每一个可变延迟元件的延迟持续时间进行编程,所述多个可变延迟元件中的每一个可变延迟元件连接到所述多个数据组中的一个数据组。
声明15:本发明构思的实施例包括根据声明13的方法,其中,构造DIMM SSD SoC以在所述组中的多个数据组上重现所述多个延迟的步骤包括:构造DIMM SSD SoC以在多个时钟信号上重现所述多个延迟,所述多个时钟信号中的每一个时钟信号进入到所述多个数据组中的一个数据组。
声明16:本发明构思的实施例包括根据声明15的方法,其中,构造DIMM SSD SoC以在多个时钟信号上重现所述多个延迟的步骤包括:构造DIMM SSD SoC以将所述多个时钟信号交错到所述多个数据组。
声明17:本发明构思的实施例包括根据声明13的方法,其中,构造DIMM SSD SoC以在所述组中的多个数据组上重现所述多个延迟的步骤包括:构造DIMM SSD SoC以在多个发送数据信号上重现所述多个延迟,所述多个发送数据信号中的每一个发送数据信号进入到所述多个数据组中的一个数据组。
声明18:本发明构思的实施例包括根据声明17的方法,其中,构造DIMM SSD SoC以在多个发送数据信号上重现所述多个延迟的步骤包括:构造DIMM SSD SoC以将所述多个发送数据信号交错到所述多个数据组。
因此,考虑到这里描述的实施例的多种置换,本具体实施方式和随附的材料仅旨在说明性,而不应该被认为限制本发明构思的范围。因此,本发明构思所要求的是可在权利要求及其等同物的范围和精神之内的所有这种修改。

Claims (16)

1.一种双列直插式存储器模块固态硬盘片上系统,包括:
控制器芯片;
第一接口,用于在主机处理器与控制器芯片之间传输信号;
多个数据组,每一个数据组能够存储组的一部分信息,其中,所述组表示数据;
第二接口,用于在主机处理器与所述多个数据组之间传输信息;
多个可变延迟元件;
第一电路,用于将控制器芯片连接到所述多个可变延迟元件中的每一个可变延迟元件;
第二电路,用于将所述多个可变延迟元件中的每一个可变延迟元件与所述多个数据组中的一个数据组连接,
其中,所述多个可变延迟元件中的每一个可变延迟元件被配置为重现表示Fly-By双列直插式存储器模块拓扑的选择的偏移延迟,
其中,选择的偏移延迟通过探测双列直插式存储器模块来确定。
2.根据权利要求1所述的双列直插式存储器模块固态硬盘片上系统,其中,
所述组包括字节信息;
所述多个数据组模拟x8动态随机存取存储器结构。
3.根据权利要求1所述的双列直插式存储器模块固态硬盘片上系统,其中,
所述组包括半字节信息;
所述多个数据组模拟x4动态随机存取存储器结构。
4.根据权利要求1所述的双列直插式存储器模块固态硬盘片上系统,其中,所述多个可变延迟元件能够被静态地配置为重现选择的偏移延迟。
5.根据权利要求1所述的双列直插式存储器模块固态硬盘片上系统,其中,所述多个可变延迟元件能够被动态地配置为重现选择的偏移延迟。
6.根据权利要求1所述的双列直插式存储器模块固态硬盘片上系统,其中,所述多个可变延迟元件将时钟信号延迟到所述多个数据组。
7.根据权利要求6所述的双列直插式存储器模块固态硬盘片上系统,其中,所述多个数据组能够从所述多个可变延迟元件接收交错的时钟信号。
8.根据权利要求1所述的双列直插式存储器模块固态硬盘片上系统,其中,所述多个可变延迟元件能够将发送信号延迟到所述多个数据组。
9.根据权利要求8所述的双列直插式存储器模块固态硬盘片上系统,其中,所述多个数据组能够从所述多个可变延迟元件接收交错的发送信号。
10.一种模拟双列直插式存储器模块的方法,包括:
探测双列直插式存储器模块;
确定双列直插式存储器模块中的与组中的通道关联的多个延迟,其中,所述组表示数据;
构造具有所述多个延迟的双列直插式存储器模块固态硬盘片上系统,以使用双列直插式存储器模块固态硬盘片上系统模拟双列直插式存储器模块。
11.根据权利要求10所述的方法,其中,构造具有所述多个延迟的双列直插式存储器模块固态硬盘片上系统的步骤包括:构造双列直插式存储器模块固态硬盘片上系统以在所述组中的多个数据组上重现所述多个延迟,其中,每一个数据组能够存储所述组的一部分信息。
12.根据权利要求11所述的方法,其中,构造双列直插式存储器模块固态硬盘片上系统以在所述组中的多个数据组上重现所述多个延迟的步骤包括:对多个可变延迟元件中的每一个可变延迟元件的延迟持续时间进行编程,所述多个可变延迟元件中的每一个可变延迟元件连接到所述多个数据组中的一个数据组。
13.根据权利要求11所述的方法,其中,构造双列直插式存储器模块固态硬盘片上系统以在所述组中的多个数据组上重现所述多个延迟的步骤包括:构造双列直插式存储器模块固态硬盘片上系统以在多个时钟信号上重现所述多个延迟,所述多个时钟信号中的每一个时钟信号进入到一个数据组。
14.根据权利要求13所述的方法,其中,构造双列直插式存储器模块固态硬盘片上系统以在多个时钟信号上重现所述多个延迟的步骤包括:构造双列直插式存储器模块固态硬盘片上系统以将所述多个时钟信号交错到所述多个数据组。
15.根据权利要求11所述的方法,其中,构造双列直插式存储器模块固态硬盘片上系统以在所述组中的多个数据组上重现所述多个延迟的步骤包括:构造双列直插式存储器模块固态硬盘片上系统以在多个发送信号上重现所述多个延迟,所述多个发送信号中的每一个发送信号进入到一个数据组。
16.根据权利要求15所述的方法,其中,构造双列直插式存储器模块固态硬盘片上系统以在所述多个发送信号上重现所述多个延迟的步骤包括:构造双列直插式存储器模块固态硬盘片上系统以将所述多个发送信号交错到所述多个数据组。
CN201610810976.4A 2015-10-07 2016-09-08 双列直插式存储器模块固态硬盘片上系统及模拟方法 Active CN106569967B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562238659P 2015-10-07 2015-10-07
US62/238,659 2015-10-07
US14/973,720 2015-12-17
US14/973,720 US9666263B2 (en) 2015-10-07 2015-12-17 DIMM SSD SoC DRAM byte lane skewing

Publications (2)

Publication Number Publication Date
CN106569967A CN106569967A (zh) 2017-04-19
CN106569967B true CN106569967B (zh) 2019-11-22

Family

ID=58499806

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610810976.4A Active CN106569967B (zh) 2015-10-07 2016-09-08 双列直插式存储器模块固态硬盘片上系统及模拟方法

Country Status (5)

Country Link
US (1) US9666263B2 (zh)
JP (1) JP6775353B2 (zh)
KR (1) KR102457095B1 (zh)
CN (1) CN106569967B (zh)
TW (1) TW201714174A (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10845866B2 (en) * 2017-06-22 2020-11-24 Micron Technology, Inc. Non-volatile memory system or sub-system
CN113166797B (zh) 2018-12-21 2024-04-12 Illumina公司 基于核酸酶的rna耗尽
KR20220012019A (ko) 2020-07-22 2022-02-03 삼성전자주식회사 메모리 모듈 및 이를 포함하는 메모리 시스템
KR20230045861A (ko) * 2021-09-29 2023-04-05 삼성전자주식회사 메모리 모듈의 반도체 메모리 장치의 동작을 설계 레벨에서 검증하는 시뮬레이션 방법 및 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8081537B1 (en) * 2004-03-05 2011-12-20 Netlist, Inc. Circuit for providing chip-select signals to a plurality of ranks of a DDR memory module
CN104810054A (zh) * 2014-01-23 2015-07-29 三星电子株式会社 控制目标模块的写入均衡的电路及其方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020010300A (ko) * 2000-07-29 2002-02-04 박종섭 반도체 소자의 클럭 테스트 장치
KR100840441B1 (ko) * 2004-03-31 2008-06-20 마이크론 테크놀로지, 인크. 집적 회로들에서의 신호 타이밍의 재구성
KR100725783B1 (ko) * 2004-12-14 2007-06-08 한국전자통신연구원 Snmp를 이용한 망 관리 에이전트로 구성된홈게이트웨이 시스템 및 홈게이트웨이 시스템에서snmp를 이용한 망 관리 에이전트 구성 방법
KR20060081522A (ko) 2005-01-10 2006-07-13 삼성전자주식회사 피씨아이 익스프레스의 바이트 스큐 보상방법 및 이를위한 피씨아이 익스프레스 물리 계층 수신기
US7457978B2 (en) 2005-05-09 2008-11-25 Micron Technology, Inc. Adjustable byte lane offset for memory module to reduce skew
KR101300854B1 (ko) * 2007-03-05 2013-08-27 삼성전자주식회사 직교 주파수 다중 접속 무선 통신 시스템에서 자원 할당장치 및 방법
US7725783B2 (en) * 2007-07-20 2010-05-25 International Business Machines Corporation Method and apparatus for repeatable drive strength assessments of high speed memory DIMMs
KR100897298B1 (ko) * 2007-12-27 2009-05-14 (주)인디링스 읽기 신호 타이밍을 조정하는 플래시 메모리 장치 및플래시 메모리 장치의 읽기 제어 방법
US7975164B2 (en) 2008-06-06 2011-07-05 Uniquify, Incorporated DDR memory controller
US8073090B2 (en) 2008-07-11 2011-12-06 Integrated Device Technology, Inc. Synchronous de-skew with programmable latency for multi-lane high speed serial interface
US8472279B2 (en) * 2010-08-31 2013-06-25 Micron Technology, Inc. Channel skewing
KR20150006560A (ko) * 2013-07-09 2015-01-19 주식회사 에스원 디지털 도어 락의 소비 전력 감소를 통한 배터리 수명 연장 방법 및 이를 이용한 디지털 도어락 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8081537B1 (en) * 2004-03-05 2011-12-20 Netlist, Inc. Circuit for providing chip-select signals to a plurality of ranks of a DDR memory module
CN104810054A (zh) * 2014-01-23 2015-07-29 三星电子株式会社 控制目标模块的写入均衡的电路及其方法

Also Published As

Publication number Publication date
CN106569967A (zh) 2017-04-19
TW201714174A (zh) 2017-04-16
KR102457095B1 (ko) 2022-10-20
JP2017073122A (ja) 2017-04-13
US20170103796A1 (en) 2017-04-13
US9666263B2 (en) 2017-05-30
JP6775353B2 (ja) 2020-10-28
KR20170041615A (ko) 2017-04-17

Similar Documents

Publication Publication Date Title
CN106569967B (zh) 双列直插式存储器模块固态硬盘片上系统及模拟方法
CN106575517B (zh) 用于提供比较访问功能的存储器设备
CN106796556B (zh) 仿真端点配置
CN105612580B (zh) 使用标准控制器部件的大容量存储系统
KR102125449B1 (ko) 트레이닝 방법을 수행하는 반도체장치 및 반도체시스템
CN109313617A (zh) 负载减少的非易失性存储器接口
CN102799509B (zh) 基于双fpga芯片的高带宽可扩展复杂逻辑验证系统
US10216678B2 (en) Serial peripheral interface daisy chain communication with an in-frame response
CN103051687B (zh) 一种将应用业务部署到云存储虚拟机的系统及方法
CN103988262A (zh) 串行连接的装置中的独立的写和读控制
CN106205728B (zh) 奇偶校验电路及包括该奇偶校验电路的存储器装置
KR20180113371A (ko) 데이터 저장 장치
JP2017518574A (ja) フラッシュメモリベースのストレージデバイスの入力/出力仮想化(iov)ホストコントローラ(hc)(iov−hc)におけるコマンドトラッピング
CN105306031B (zh) 集成电路和包括集成电路的半导体系统
CN105068955A (zh) 一种局部总线结构及数据交互方法
JP2017073122A5 (zh)
US9594715B2 (en) Integrated circuit devices, systems and methods having automatic configurable mapping of input and/or output data connections
KR20130085956A (ko) 데이지-체인 디바이스용 고속 인터페이스
CN105676726A (zh) 基于spi接口的多mems传感器快速数据存取系统及方法
JP2005084956A (ja) 論理回路の検証方法および検証システム
Kwon et al. Gen‐Z memory pool system implementation and performance measurement
US11442829B2 (en) Packeted protocol device test system
CN104063351B (zh) 一种用于乒乓防冲突的高速复接器同步串行接口设计方法
CN104267925B (zh) 弹性先进先出存储器及存储方法
CN207926900U (zh) 电子设备及无线耳机

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant