CN108268391A - 半导体系统及其控制方法 - Google Patents

半导体系统及其控制方法 Download PDF

Info

Publication number
CN108268391A
CN108268391A CN201711206775.4A CN201711206775A CN108268391A CN 108268391 A CN108268391 A CN 108268391A CN 201711206775 A CN201711206775 A CN 201711206775A CN 108268391 A CN108268391 A CN 108268391A
Authority
CN
China
Prior art keywords
volatile
memory module
module
semiconductor system
data
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.)
Granted
Application number
CN201711206775.4A
Other languages
English (en)
Other versions
CN108268391B (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
Seoul National University Industry Foundation
Industry Academic Cooperation Foundation of Yonsei University
Original Assignee
Samsung Electronics Co Ltd
Seoul National University Industry Foundation
Industry Academic Cooperation Foundation of Yonsei University
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, Seoul National University Industry Foundation, Industry Academic Cooperation Foundation of Yonsei University filed Critical Samsung Electronics Co Ltd
Publication of CN108268391A publication Critical patent/CN108268391A/zh
Application granted granted Critical
Publication of CN108268391B publication Critical patent/CN108268391B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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
    • 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
    • G06F13/1684Details of memory controller using multiple buses
    • 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
    • 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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Abstract

本发明提供一种半导体系统及其控制方法。本发明提供一种包括异构存储器模块的半导体系统。所述半导体系统包括经由系统总线连接到异构存储器模块的CPU。异构存储器模块包括:易失性存储器模块;非易失性存储器模块;内部总线,与系统总线分离,并连接易失性存储器模块和非易失性存储器模块;交换管理器,被配置为使用内部总线而不使用系统总线来控制在易失性存储器模块和非易失性存储器模块之间传递目标数据的交换操作的执行。

Description

半导体系统及其控制方法
本申请要求于2016年12月30日提交的第10-2016-0183311号韩国专利申请的优先权,所述韩国专利申请的主题通过引用包含于此。
技术领域
本发明构思整体涉及半导体系统。更具体地讲,本发明构思涉及包括异构存储器模块的半导体系统,其中,异构存储器模块能够在不占用异构存储器模块的外部的资源(例如,系统总线和处理组件)的情况下,在内部布置的存储器资源之间传递数据。
背景技术
异构存储器模块包括两个或更多个不同类型的存储器模块。例如,异构存储器模块可包括与用于将数据存储在易失性存储器单元中的存储器对应的动态随机存取存储器(DRAM),以及与用于将数据存储在非易失性存储器单元中的存储器对应的基于NAND闪存的存储装置(NFSD)。
存在在DRAM和NFSD之间执行数据交换(data swap)操作的需要。例如,如果在DRAM中发生页错误,则需要执行用于将存储在NFSD中的数据传递到DRAM的换入操作。如果DRAM的存储器溢出,则需要执行用于将数据从DRAM传递到NFSD来确保更多存储空间的换出操作。
因此,存在对在包括异构存储器模块的半导体系统中有效执行数据交换操作的方法的需求。
发明内容
一方面,本发明构思提供一种包括经由系统总线连接到异构存储器模块的中央处理器(CPU)的半导体系统。异构存储器模块包括:易失性存储器模块;非易失性存储器模块;内部总线,与系统总线分离,并连接易失性存储器模块和非易失性存储器模块;交换管理器,被配置为使用内部总线而不使用系统总线来控制在易失性存储器模块和非易失性存储器模块之间传递目标数据的交换操作的执行。
另一方面,本发明构思提供一种半导体系统,包括:中央处理器(CPU),经由系统总线连接到异构存储器模块。异构存储器模块包括:易失性存储器模块;页表,描述存储在易失性存储器模块中的数据;非易失性存储器模块;内部总线,与系统总线分离,并连接易失性存储器模块和非易失性存储器模块;存储器控制器。存储器控制器包括:目标选择器,根据从页表得到的存取模式来选择存储在易失性存储器模块和非易失性存储器模块中的一个中的目标数据;算法模块,提供算法;交换管理器,被配置为响应于算法使用内部总线而不使用系统总线来控制在易失性存储器模块和非易失性存储器模块之间传递通过目标选择器选择的目标数据的交换操作的执行。
另一方面,本发明构思提供一种控制包括经由系统总线连接到异构存储器模块的中央处理器(CPU)的半导体系统的操作的方法。异构存储器模块包括易失性存储器模块、非易失性存储器模块、与系统总线分离并连接易失性存储器模块和非易失性存储器模块的内部总线以及交换管理器。所述方法包括:响应于经由外部总线从CPU接收的异构存储器模块中的指令,配置交换管理器来使用内部总线而不使用系统总线来控制在易失性存储器模块和非易失性存储器模块之间传递目标数据的交换操作的执行。
附图说明
通过参考附图详细描述本公开的示例实施例,本公开的上述和其他方面、特征将会更加清楚,其中,在附图中:
图1是示出根据本公开的实施例的半导体系统的框图;
图2是解释构成图1的半导体系统的半导体装置的框图;
图3是示出图2的半导体装置的操作的实施例的示图;
图4A是示出图2的半导体装置的操作的另一实施例的示图;
图4B是示出图2的半导体装置的操作的另一实施例的示图;
图5是示出根据本公开的另一实施例的半导体系统的框图;
图6是解释构成图5的半导体系统的半导体装置的框图;
图7是示出图6的半导体装置的操作的实施例的示图;
图8A是示出图6的半导体装置的操作的另一实施例的示图;
图8B是示出图6的半导体装置的操作的另一实施例的示图;
图9是示出图6的半导体装置的操作的另一实施例的示图;
图10是示出图6的半导体装置的操作的另一实施例的示图。
具体实施方式
图1是示出根据本发明构思的实施例的半导体系统1的框图。半导体系统1包括内核10、中央处理器(CPU)50、直接存储器存取(DMA)模块60和异构存储器模块100。CPU 50、DMA模块60和异构存储器模块100经由系统总线90电互连。这里,半导体系统1可用于电子装置或计算平台,诸如个人计算机、膝上型计算机、平板计算机、智能电话等。
在图1中,内核10可包括实现操作系统(诸如驱动兼容性半导体系统的操作系统)的硬件和/或软件(以下,单独地或共同地称为“硬件/软件”)资源。在这方面,内核10可包括处理与由包含半导体系统1的装置的用户请求的存储器读取和/或写入(以下称为,读取/写入)操作相关联的命令、指令和/或数据的一个或多个硬件/软件资源,或者驱动异构存储器模块100的应用。DMA模块60可用于控制一个或多个(半导体系统1外部的)外围装置和CPU 50之间的数据的传递。
在特定实施例中,异构存储器模块100包括一个或多个第一类型存储器模块、一个或多个第二类型存储器模块以及交换管理器132。
第一类型存储器模块是这样的存储器模块:数据主要存储在易失性存储器(诸如动态随机存取存储器(DRAM)或类似的易失性存储器资源)中,当施加的电源中断时,存储的数据可丢失。以下,第一类型存储器模块(例如,图1中的DRAM 110)将被称为“易失性存储器模块”,而不管易失性存储器单元的具体类型和/或配置如何。
第二类型存储器模块是这样的存储器模块:数据主要存储在非易失性存储器(诸如闪存或类似的非易失性存储器资源)中,当施加的电源中断时,存储的数据被保持。以下,第二类型存储器模块(例如,图1中的基于NAND闪存的存储装置(NFSD)120和122)将被称为“非易失性存储器模块”,而不管非易失性存储器单元的具体类型和/或配置如何。
图1的示出的示例中,NFSD交换存储器120(以下,可称为“NFSD交换120”或“第一非易失性存储区域120”)和NFSD存储器122(以下,可称为“NFSD 122”或“第二非易失性存储区域122”)提供单独的和不同的(第一和第二)非易失性存储区域。这里,第一非易失性存储区域120包括用于暂时存储(例如,在交换数据操作期间)由交换管理器132提供(或者在交换管理器132的控制下提供)的“交换数据”的交换数据区域。相反地,第二非易失性存储区域122用于存储不同于交换数据的数据。
交换管理器132经由内部总线(或IO总线)190连接到易失性存储器模块(例如,DRAM 110)以及非易失性存储器模块(例如,NFSD 122和NFSD交换120),使得数据可在易失性和非易失性存储器模块之间被直接交换。在这方面,内部总线可被理解为在操作环境下与系统总线90“分离”。也就是说,虽然系统总线90和内部总线190可共同地用于整体或部分地传递异构存储器模块100和外部资源(例如,CPU 50和/或DMA模块60)之间的数据,但是内部总线190还可用于单独地传递异构存储器模块100的内部组件之间的数据而不加载(或使用)系统总线90。另外关于上述内容,术语“直接”表示数据的交换或传输全在异构存储器模块100内部,而不使用外部提供的系统总线90或DMA模块60。在特定实施例中,交换管理器132可完全以异构存储器模块100内的硬件实现。
参考图1中示出的示例性配置,交换管理器132可直接执行易失性存储器模块(例如,DRAM 110)和非易失性存储器模块(例如,NFSD 122和NFSD交换120)之间的数据交换,而不使用异构存储器模块100外部的DMA模块60。由于交换管理器132能够在不占用系统总线90的情况下,执行易失性存储器模块和非易失性存储器模块之间的交换操作,所以可在不延长执行对应的数据处理操作(例如,读取、写入、擦除、垃圾收集等)所需要的时间的情况下,减少对于数据处理资源的负荷。
此外,交换管理器132可根据需要在异构存储器模块100内以自动方式操作,而不需要(或等待)外部资源,诸如,系统总线90和/或DMA模块60。在这方面,如下面使用的短语“交换管理器132自动地操作”指:在对异构存储器模块100外部的资源没有实质的数据处理要求的情况下,交换管理器132可响应于来自内核10的请求来执行交换操作或者可在没有来自内核10请求的情况下自动地(或内部地)执行数据交换。下面情况是说明性的。
例如,交换管理器132可从内核10接收交换请求,并且响应于交换请求,执行从非易失性存储器模块(例如,NFSD交换120或NFSD 122)传递数据的换入操作。
可选地,交换管理器132可不管内核10的控制条件如何而内部地确定执行数据交换。也就是说,交换管理器132可监视易失性存储器模块(例如,DRAM 110)的状态,并且响应于监视结果来执行将数据从一个或多个非易失性存储器模块(NFSD交换120和/或NFSD122)传递到易失性存储器模块的换入操作。在另一方法中,交换管理器132可监视一个或多个易失性存储器模块,并且响应于监视结果来执行将数据从一个或多个易失性存储器模块传递到一个或多个非易失性存储器模块的换出操作。
如上所述,由于交换管理器132能够不管内核10的控制状态如何而自动地操作,所以存储在易失性存储器模块(例如,DRAM 110)中的数据可根据限定的交换策略被有效地管理,从而保持半导体存储器系统的性能特性(诸如,减少页错误发生的数量)。
图2是进一步示出图1的半导体装置的框图。然而,这里异构存储器模块100除了包括DRAM 110和NFSD交换120之外,还包括存储器控制器130、页表(或者页映射)140以及算法提供(ALG)模块150。
存储器控制器130可用于实现先前描述的交换管理器132,并且可还包括处理器138。
页表140是通过映射(例如)由DRAM 110提供的存储器区域而获得的可搜索的数据结构(例如,表)。也就是说,页表140是描述当前存储在易失性存储器模块110中的数据的可搜索的数据结构。因此,响应于外部提供的存储器读取/写入请求,页表140可用于指示通过读取/写入请求识别的数据是否有效地存在于DRAM 110中的对应的识别的地址中。
例如,在接收到与存储器读取/写入操作相关联的命令(CMD)、地址(ADDR)和/或数据(DATA)(以下,单独地或共同地称为“CAD”)时,异构存储器模块100可搜索页表140并确定将被提供给CPU 50的对应的数据是否被加载到由易失性存储器模块(例如,DRAM 110)提供的存储器区域中。如果页表140被搜索并发生页错误(即,在易失性存储器模块中没有找到有效数据),则可需要执行用于从一个或多个非易失性存储器模块传递识别的数据(以下称为“目标数据”)的换入操作。
算法提供模块150可用于存储、更新和/或提供能够使交换管理器132能够选择性地交换存储在非易失性存储器模块(例如,NFSD交换120)中的目标数据的算法。算法可包括各种高速缓存算法,诸如,最近最少使用(LRU)算法、最近最多使用(MFU)算法等。
在这种方式下,交换管理器132可在用于检索(或选择)将从非易失性存储器模块120换入的目标数据的操作中使用通过算法提供模块150存储的算法被控制。
图3是示出图1和图2的实施例的操作方法的总体图。图3中示出的操作中,(例如)从CPU 50提供的指令5包括用于在以‘M’的地址值开始的地址ADDR加载数据的命令CMD。响应于指令5,异构存储器模块100搜索页表140。当与命令CMD相关联的有效数据位于地址M时,命令可由存储器控制器130处理并且对应的结果可被返回到CPU 50。
相反,当没有有效数据位于地址M时,发生页错误中断并且内核10识别页错误中断的发生。因此,内核10将交换命令传送到交换管理器132,并且交换管理器132选择将从非易失性存储器模块(例如,NFSD 122)换入的目标数据124。因此,交换管理器132执行用于将选择的目标数据124传递到易失性存储器模块的指定区域(例如,DRAM 110的地址M)的换入操作,并且之后更新页表140,以反映换入操作的执行和DRAM 110的更新。
这里应注意,在易失性存储器模块(DRAM 110)和非易失性存储器模块(NFSD 122)之间执行的换入操作在交换管理器132的控制下被执行,而不占用异构存储器模块100外部的资源(诸如,系统总线90),从而减少对于这些资源的计算和操作负荷,并潜在地减少整个半导体系统的操作时间。
图4A是示出图1和图2的实施例的操作的另一方法的示图。
参考图4A,假设交换管理器132不管异构存储器模块100的外部的内核10的控制状态如何,而自动地执行交换操作。也就是说,与图3的实施例不同,交换管理器132不需要来自内核10的交换命令来执行交换操作。
例如,交换管理器132可考虑提示的指令的顺序来监视存储在易失性存储器模块110中的数据,并根据监测结果,确定执行将目标数据126从非易失性存储器模块122预取到易失性存储器模块的换入操作。这里,术语“预取”用于区分之前执行的换入操作,并可预期页错误发生。页表140仍响应于预取、换入操作的执行而被更新。
如上所述,由于交换管理器132不管内核10的控制状态如何而自动地操作,所以存储在易失性存储器模块110中的数据可根据限定的交换策略被更频繁地更新(或管理),从而实现减少页错误的发生的性能改进。
图4B是示出图1和图2的实施例的操作的另一方法的示图。
参考图4B,这里再次假设交换管理器132不管内核10的控制状态如何而自动地执行特定交换操作。例如,在监视易失性存储器模块110时,交换管理器132可根据监视结果确定需要执行将存储在易失性存储器模块110中的数据传递到非易失性存储器模块122的换出操作。
在这种情况下,交换管理器132选择存储在易失性存储器模块110中的将被换出到非易失性存储器模块122的目标数据112。之后,页表140被更新。
可选地或另外地,交换管理器132可确定将初始存储在非易失性存储器模块122中的目标数据换入到易失性存储器模块110。
图5是示出根据本发明构思的另一实施例的半导体系统2的框图。
参考图5,半导体系统2与图1的半导体系统1在以下方面不同:异构存储器模块100还包括目标选择模块(或目标选择器)134和算法选择模块136,其中,目标选择模块134用于根据通过页映射描述的存取模式,选择存储在一个或多个非易失性存储器模块120和122中的目标数据。
在这方面,算法选择模块136可用于在目标选择模块134的控制下从多个算法中选择最有利地选择目标数据的算法。算法选择模块136可接收用于选择目标数据的一个或多个算法。参见,以下关于图6提供的描述。
如将针对图9和图10的一些另外细节中描述的,算法选择模块136可接收包括与页映射相关联的存取模式信息的元数据,并将基于存取模式选择的一个或多个算法提供给目标选择模块134。
通过基于页映射的存取模式来选择目标数据,交换管理器132的性能可被进一步提高。例如,基于针对过去或最近过去的数据处理操作绘制的确定的存取模式,在被频繁存取的“快数据”可被保留在易失性存储器模块110中的同时,不被频繁存取的“慢数据”被换出到非易失性存储器模块120、122。在这种方式下,可基于存取模式偏置(bias)易失性存储器模块和非易失性存储器模块之间的数据存储方法,以进一步减少数据处理开销。
图6是示出根据本发明构思的另一实施例的半导体系统的框图。参考图6,半导体系统与图2的半导体系统在以下方面不同:存储器控制器130还包括如上所述的目标选择模块134和算法选择模块136。
这里再次,算法提供模块150可用于使用算法选择模块136提供最有效地允许目标选择模块134从非易失性存储器模块120选择目标数据的算法。算法可包括各种高速缓存算法,诸如最近最少使用(LRU)算法和最近最多使用(MFU)算法。
目标选择模块134可使用从算法提供模块150提供的算法来从第二类型存储器模块120选择将被换入的目标数据。交换管理器132可执行用于将通过目标选择模块134选择的目标数据传递到第一类型存储器模块110的换入操作。
图7是示出用于图6的实施例的操作方法的示意图并与关于图3描述的方法类似。
这里再次响应于来自CPU 50的包括地址ADDR M的指令5,并且在识别页错误中断时,内核10将交换命令发送到交换管理器132。交换管理器132执行用于将通过目标选择模块134和算法选择模块136根据从页映射得到的存取模式选择的目标数据124传递到易失性存储器模块110的换入操作,之后更新页表140。
因此,除了在易失性存储器模块110和非易失性存储器模块120之间的数据交换期间减少对外部资源的负荷之外,基于使用目标选择模块134和算法选择模块136的存取模式的交换目标数据的选择能够进一步细化数据处理操作。
以相同的方式,图8A和图8B中分别示出的操作方法还使用具有通过如上所述的目标选择器134和算法选择模块136提供的附加功能描述了图4A和图4B中示出的方法。
图9是示出图6的半导体系统的操作的方法的示意图。
参考图9,假设页映射的页表包括根据分层页映射策略定义的数据的分层结构。例如,页映射可具有包括全局目录200、中间目录202、页表204和偏移206的分层结构。
算法选择模块136可接收包括页映射的存取模式信息的第一元数据212、第二元数据214和第三元数据216,并且使用包括在元数据212、214和216中的存取模式信息来选择包括在数据提供模块150中的算法152、154和156中的至少一个。
以特定的方法,第一元数据212的长度可比第二元数据214的长度长,并且第二元数据214的长度可比第三元数据216的长度长。
在这种情况下,可从针对与页映射的第一层对应的全局目录200的页映射产生第一元数据212。可从针对与页映射的第二层对应的中间目录202的页映射产生第二元数据214。可从针对与页映射的第三层对应的页表204的页映射产生第三元数据216。
具体地讲,如图9中所示,可从针对全局目录200的页映射的一部分产生第一元数据212,可从针对中间目录202的页映射的一部分产生第二元数据214,并且可从针对页表204的页映射的一部分产生第三元数据216。
图10是示出图6的半导体系统的操作的另一方法的另一概念图。
参考图10,算法选择模块136不仅可接收包括页映射的存取模式信息的第一元数据212、第二元数据214和第三元数据216,而且从丢失率检查器160接收关于针对第一类型存储器模块110的命中率的信息。
算法选择模块136可根据针对第一类型存储器模块110的命中率的改变,变化地选择从算法提供模块150提供的算法152、154和156中的一个。
在特定的方法中,由于交换管理器132能够执行第一类型存储器模块110和第二类型存储器模块120之间的交换而不占用系统总线90,所以不仅可确保计算资源,而且减少延迟时间开销。此外,由于交换管理器132不管内核10的控制如何而自动地操作,所以第一类型存储器模块110的数据根据适当的交换策略被频繁地管理,从而实现诸如减少页错误的发生的数量的性能改进效果。
此外,通过基于页映射的存取模式经由目标选择模块134和算法选择模块136来选择交换目标数据,通过交换管理器132执行的交换性能能够被提高。
尽管为了说明性目的已经公开本发明构思的特定实施例,但是本领域技术人员将理解,在不脱离由所附权利要求和它们的等同物限定的本发明构思的范围的情况下,可进行各种修改、添加和替换。

Claims (20)

1.一种半导体系统,包括:
中央处理器CPU和异构存储器模块,
其中,CPU经由系统总线连接到异构存储器模块,
其中,异构存储器模块包括:
易失性存储器模块;
非易失性存储器模块;
内部总线,与系统总线分离,并连接易失性存储器模块和非易失性存储器模块;
交换管理器,被配置为使用内部总线而不使用系统总线来控制在易失性存储器模块和非易失性存储器模块之间传递目标数据的交换操作的执行。
2.根据权利要求1所述的半导体系统,其中,交换管理器被配置为响应于经由外部总线从CPU接收的指令来控制交换操作的执行,其中,所述指令响应于针对存储在易失性存储器模块中的数据的页错误的发生而产生。
3.根据权利要求2所述的半导体系统,还包括:
内核,在异构存储器模块外部,并被配置为响应于所述页错误的发生来产生交换操作命令并将交换操作命令提供给交换管理器。
4.根据权利要求1所述的半导体系统,其中,交换管理器还被配置为:监视存储在易失性存储器模块中的数据并且产生对应的监视结果,使得交换管理器自动响应于监视结果来控制交换操作的执行。
5.根据权利要求4所述的半导体系统,还包括:
内核,在异构存储器模块外部,
其中,交换管理器自动响应于监视结果来控制交换操作的执行而不考虑内核的控制状态如何。
6.根据权利要求5所述的半导体系统,其中,异构存储器模块还包括描述存储在易失性存储器中的数据的页表。
7.根据权利要求1所述的半导体系统,其中,交换操作是将数据从非易失性存储器模块传递到易失性存储器模块的换入操作。
8.根据权利要求4所述的半导体系统,其中,交换操作是将数据从易失性存储器模块传递到非易失性存储器模块的换出操作。
9.根据权利要求1所述的半导体系统,还包括:
直接存储器存取DMA模块,经由外部总线连接到异构存储器模块,
其中,交换管理器,被配置为在不使用DMA模块的情况下控制在易失性存储器模块和非易失性存储器模块之间传递目标数据的交换操作的执行。
10.一种半导体系统,包括:
中央处理器CPU和异构存储器模块,
其中CPU经由系统总线连接到异构存储器模块,
其中,异构存储器模块包括:
易失性存储器模块;
页映射,描述存储在易失性存储器模块中的数据;
非易失性存储器模块;
内部总线,与系统总线分离并连接易失性存储器模块和非易失性存储器模块;
存储器控制器,
其中,存储器控制器包括:
目标选择器,根据从页表得到的存取模式来选择存储在易失性存储器模块和非易失性存储器模块中的一个中的目标数据;
算法模块,提供算法;
交换管理器,被配置为响应于算法使用内部总线而不使用系统总线来控制在易失性存储器模块和非易失性存储器模块之间传递通过目标选择器选择的目标数据的交换操作的执行。
11.根据权利要求10所述的半导体系统,其中,交换管理器被配置为响应于经由外部总线从CPU接收的指令来控制交换操作的执行,其中,所述指令响应于针对存储在易失性存储器模块中的数据的页错误的发生而产生。
12.根据权利要求11所述的半导体系统,还包括:
内核,在异构存储器模块外部,被配置为响应于所述页错误的发生来产生交换操作命令并将交换操作命令提供给交换管理器。
13.根据权利要求10所述的半导体系统,其中,交换管理器还被配置为监视存储在易失性存储器模块中的数据并产生对应的监视结果,使得交换管理器自动响应于监视结果和算法来控制交换操作的执行。
14.根据权利要求13所述的半导体系统,还包括:
内核,在异构存储器模块外部,
其中,交换管理器自动响应于监视结果来控制交换操作的执行而不考虑内核的控制状态如何。
15.根据权利要求10所述的半导体系统,其中,页映射是根据分层页映射策略定义的数据的分层结构。
16.根据权利要求15所述的半导体系统,其中,页映射包括全局目录、中间目录、页表和偏移,
算法模块是响应于针对存储在易失性存储器模块中的数据的元数据从多个算法中选择算法的算法选择模块。
17.根据权利要求16所述的半导体系统,其中,存储器控制器还包括将命中率提供给算法选择模块的命中率模块,
算法选择模块还响应于命中率从所述多个算法中选择算法。
18.根据权利要求10所述的半导体系统,还包括:
直接存储器存取DMA模块,经由外部总线连接到异构存储器模块,
其中,交换管理器被配置为在不使用DMA模块的情况下控制在易失性存储器模块和非易失性存储器模块之间传递目标数据的交换操作的执行。
19.一种控制半导体系统的操作的方法,所述半导体系统包括经由系统总线连接到异构存储器模块的中央处理器CPU,其中,异构存储器模块包括易失性存储器模块、非易失性存储器模块、与系统总线分离并连接易失性存储器模块和非易失性存储器模块的内部总线以及交换管理器,所述方法包括:
响应于经由外部总线从CPU接收的异构存储器模块中的指令,配置交换管理器来使用内部总线而不使用系统总线来控制在易失性存储器模块和非易失性存储器模块之间传递目标数据的交换操作的执行。
20.根据权利要求19所述的方法,其中,异构存储器模块还包括页表、包括目标选择器以及算法模块的存储器控制器,所述方法还包括:
根据从页表得到的存取模式,使用目标选择器来选择存储在易失性存储器模块和非易失性存储器模块中的一个中的目标数据;
从算法模块提供算法;
响应于算法通过使用交换管理器来控制交换操作的执行。
CN201711206775.4A 2016-12-30 2017-11-27 半导体系统及其控制方法 Active CN108268391B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2016-0183311 2016-12-30
KR1020160183311A KR20180078512A (ko) 2016-12-30 2016-12-30 반도체 장치

Publications (2)

Publication Number Publication Date
CN108268391A true CN108268391A (zh) 2018-07-10
CN108268391B CN108268391B (zh) 2023-08-08

Family

ID=62712467

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711206775.4A Active CN108268391B (zh) 2016-12-30 2017-11-27 半导体系统及其控制方法

Country Status (3)

Country Link
US (1) US10509744B2 (zh)
KR (1) KR20180078512A (zh)
CN (1) CN108268391B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113721839A (zh) * 2021-07-23 2021-11-30 平头哥(上海)半导体技术有限公司 用于处理图数据的计算系统和存储分层方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019124259A1 (ja) * 2017-12-20 2019-06-27 日本電気株式会社 構成管理装置、構成管理システム、構成管理方法、および、構成管理プログラム
US10996975B2 (en) 2019-08-22 2021-05-04 Micron Technology, Inc. Hierarchical memory systems

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101563729A (zh) * 2006-12-20 2009-10-21 莫塞德技术公司 具有易失性和非易失性存储器的混合固态存储器系统
US20120137055A1 (en) * 2010-11-29 2012-05-31 Dong Yang Lee Hybrid memory system and method managing the same
US8397013B1 (en) * 2006-10-05 2013-03-12 Google Inc. Hybrid memory module
CN103890688A (zh) * 2011-07-28 2014-06-25 奈特力斯公司 一种flash-dram混合存储器模块
US20150169238A1 (en) * 2011-07-28 2015-06-18 Netlist, Inc. Hybrid memory module and system and method of operating the same
CN105934747A (zh) * 2013-11-07 2016-09-07 奈特力斯股份有限公司 混合内存模块以及操作混合内存模块的系统和方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4849879A (en) * 1986-09-02 1989-07-18 Digital Equipment Corp Data processor performance advisor
TWI331640B (en) * 2003-05-26 2010-10-11 Sekisui Chemical Co Ltd Fire retardant resin sash
US7571295B2 (en) 2005-08-04 2009-08-04 Intel Corporation Memory manager for heterogeneous memory control
US7716411B2 (en) 2006-06-07 2010-05-11 Microsoft Corporation Hybrid memory device with single interface
JP2009211153A (ja) * 2008-02-29 2009-09-17 Toshiba Corp メモリ装置、情報処理装置及び電力制御方法
US7996650B2 (en) * 2008-07-14 2011-08-09 Via Technologies, Inc. Microprocessor that performs speculative tablewalks
US8825984B1 (en) * 2008-10-13 2014-09-02 Netapp, Inc. Address translation mechanism for shared memory based inter-domain communication
JP5404798B2 (ja) * 2009-09-21 2014-02-05 株式会社東芝 仮想記憶管理装置及び記憶管理装置
EP2630574A1 (en) * 2010-10-22 2013-08-28 ST-Ericsson SA Improving storage lifetime using data swapping
US10198350B2 (en) * 2011-07-28 2019-02-05 Netlist, Inc. Memory module having volatile and non-volatile memory subsystems and method of operation
US9128845B2 (en) 2012-07-30 2015-09-08 Hewlett-Packard Development Company, L.P. Dynamically partition a volatile memory for a cache and a memory partition
US9569144B2 (en) * 2013-03-27 2017-02-14 Hitachi, Ltd. DRAM with SDRAM interface, and hybrid flash memory module
US9129674B2 (en) * 2013-06-27 2015-09-08 Intel Corporation Hybrid memory device
US9898410B2 (en) * 2013-09-10 2018-02-20 Intel Corporation Hybrid main memory using a fine-grain level of remapping
KR102116984B1 (ko) * 2014-03-11 2020-05-29 삼성전자 주식회사 메모리 스왑 오퍼레이션 제어 방법 및 이를 적용하는 데이터 처리 시스템
KR102248915B1 (ko) 2014-03-26 2021-05-07 삼성전자주식회사 하이브리드 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 데이터 처리 방법
KR20160015491A (ko) 2014-07-30 2016-02-15 한국전자통신연구원 이종 메모리 시스템 및 이의 데이터 통신 방법
US9779784B2 (en) 2014-10-29 2017-10-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US10540098B2 (en) * 2016-07-19 2020-01-21 Sap Se Workload-aware page management for in-memory databases in hybrid main memory systems
US20180107596A1 (en) * 2016-10-13 2018-04-19 Microsoft Technology Licensing, Llc Battery-based data persistence management in computing systems
TWI596541B (zh) * 2016-11-30 2017-08-21 財團法人工業技術研究院 資料存取系統、資料存取裝置及資料存取方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8397013B1 (en) * 2006-10-05 2013-03-12 Google Inc. Hybrid memory module
CN101563729A (zh) * 2006-12-20 2009-10-21 莫塞德技术公司 具有易失性和非易失性存储器的混合固态存储器系统
CN103558993A (zh) * 2006-12-20 2014-02-05 莫塞德技术公司 具有易失性和非易失性存储器的混合固态存储器系统
US20120137055A1 (en) * 2010-11-29 2012-05-31 Dong Yang Lee Hybrid memory system and method managing the same
CN103890688A (zh) * 2011-07-28 2014-06-25 奈特力斯公司 一种flash-dram混合存储器模块
US20150169238A1 (en) * 2011-07-28 2015-06-18 Netlist, Inc. Hybrid memory module and system and method of operating the same
CN105934747A (zh) * 2013-11-07 2016-09-07 奈特力斯股份有限公司 混合内存模块以及操作混合内存模块的系统和方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113721839A (zh) * 2021-07-23 2021-11-30 平头哥(上海)半导体技术有限公司 用于处理图数据的计算系统和存储分层方法
CN113721839B (zh) * 2021-07-23 2024-04-19 阿里巴巴达摩院(杭州)科技有限公司 用于处理图数据的计算系统和存储分层方法

Also Published As

Publication number Publication date
KR20180078512A (ko) 2018-07-10
US20180189206A1 (en) 2018-07-05
US10509744B2 (en) 2019-12-17
CN108268391B (zh) 2023-08-08

Similar Documents

Publication Publication Date Title
US11681473B2 (en) Memory system and control method
US11709597B2 (en) Memory system and method for controlling nonvolatile memory
US11416387B2 (en) Memory system and method for controlling nonvolatile memory
US11954043B2 (en) Memory system and method for controlling nonvolatile memory
US11797436B2 (en) Memory system and method for controlling nonvolatile memory
TWI515559B (zh) 資訊處理裝置
CN105339910B (zh) 在混合驱动器中的虚拟nand容量扩展
US8996818B2 (en) Bypassing memory requests to a main memory
US10503655B2 (en) Data block sizing for channels in a multi-channel high-bandwidth memory
CN105094691B (zh) 一种数据操作的方法、设备和系统
EP3506116A1 (en) Shared memory controller in a data center
TW201935223A (zh) 記憶體系統及其控制方法
US11650760B2 (en) Memory system and method of controlling nonvolatile memory with checking a total size indicative of a sum of data length specified by a write command
CN108268391A (zh) 半导体系统及其控制方法
US10621098B2 (en) Computing device and non-volatile dual in-line memory module that evict and prefetch data with respect to memories having different operating speeds
JP4713077B2 (ja) 半導体装置

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