CN118016117A - 存储器设备、存储器设备的操作方法和存储器系统 - Google Patents
存储器设备、存储器设备的操作方法和存储器系统 Download PDFInfo
- Publication number
- CN118016117A CN118016117A CN202311491691.5A CN202311491691A CN118016117A CN 118016117 A CN118016117 A CN 118016117A CN 202311491691 A CN202311491691 A CN 202311491691A CN 118016117 A CN118016117 A CN 118016117A
- Authority
- CN
- China
- Prior art keywords
- refresh
- segment
- signal
- row
- memory device
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 220
- 238000000034 method Methods 0.000 title claims description 33
- 230000000873 masking effect Effects 0.000 claims description 47
- 238000010586 diagram Methods 0.000 description 22
- 238000012545 processing Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 5
- 102100021568 B-cell scaffold protein with ankyrin repeats Human genes 0.000 description 3
- 101000971155 Homo sapiens B-cell scaffold protein with ankyrin repeats Proteins 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 101100242901 Quaranfil virus (isolate QrfV/Tick/Afghanistan/EG_T_377/1968) PB2 gene Proteins 0.000 description 2
- 101150082826 Segment-2 gene Proteins 0.000 description 2
- 101150038853 Segment-7 gene Proteins 0.000 description 2
- 101100194052 Thogoto virus (isolate SiAr 126) Segment 2 gene Proteins 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 1
- 241000724291 Tobacco streak virus Species 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 239000002041 carbon nanotube Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Landscapes
- Dram (AREA)
Abstract
提供了一种存储器设备,其包括:包括多个存储器单元行的存储器单元阵列,所述多个存储器单元行被分组为多个段;连接到所述多个存储器单元行的行解码器;以及刷新控制电路,配置为生成用于控制对所述多个存储器单元行的刷新操作的刷新控制信号。
Description
相关申请的交叉引用
本申请基于在韩国知识产权局于2022年11月10日提交的第10-2022-0149884号韩国专利申请和于2023年3月29日提交的第10-2023-0041535号韩国专利申请并根据35U.S.C.§119要求它们的优先权,这些韩国专利申请的公开内容通过引用整体合并于此。
技术领域
本发明构思涉及存储器设备、存储器设备的操作方法和存储器系统,更具体地,涉及当存储器设备中发生行锤击攻击时,刷新存储器单元而不管存储器单元是否被掩蔽的方法。
背景技术
使用半导体芯片的系统广泛使用动态随机存取存储器(DRAM)作为其工作存储器或其主存储器,以存储由其中的主机使用的数据或指令和/或执行计算操作。一般而言,DRAM在主机的控制下写入数据或读取写入的数据。当执行计算操作时,主机从DRAM检索指令和/或数据并运行指令和/或使用数据以执行计算操作。当计算操作有结果时,主机将计算操作的结果写回DRAM。
DRAM单元尺寸已经减小以增加DRAM容量和密度。一些基于DRAM的系统由于繁重的工作负载而经历间歇性故障。此类故障追溯到对单个存储器单元行的重复访问,即行锤(row hammer)。连接到与被重复访问的存储器单元行物理相邻的存储器单元行的存储器单元可能受行锤干扰,从而引起数据损坏。受行锤影响的存储器单元可以通过目标行刷新操作来刷新。
为了管理行锤,DRAM可以在特定时间段内监测访问地址当中被密集访问的锤地址。DRAM可以将锤地址储存器在地址储存器的定义的寄存器中,基于锤地址生成指示与对应于锤地址的存储器单元行物理相邻的存储器单元行的地址的锤刷新地址,以及目标刷新(target-refresh)与对应于锤刷新地址的存储器单元行连接的存储器单元。
然而,攻击者可以使用诱饵行锤击地址来达到干扰DRAM的行锤管理操作的目的。由于包括诱饵行锤击地址的访问地址被新存储在地址储存器中,因此存储在地址储存器中的行锤击地址可能从地址储存器中被逐出,并且所监测的行锤信息可能丢失。被逐出的锤地址易受到行锤击攻击。
因此,需要对抗恶意黑客对存储器单元段的行锤击攻击的防御方法。
发明内容
本发明构思提供了即使当存储器单元阵列区域的一部分被掩蔽时也能够对被掩蔽的存储器单元阵列区域执行刷新操作的存储器设备。
此外,本发明构思提供了能够在预设的或期望的时段内对被掩蔽的存储器单元区域去掩蔽并执行选择性刷新操作的存储器设备。
根据本发明构思的一些方面,提供了一种存储器设备,其包括:包括多个存储器单元行的存储器单元阵列,所述多个存储器单元行被分组为多个段;连接到所述多个存储器单元行的行解码器;以及刷新控制电路,配置为生成用于控制对所述多个存储器单元行的刷新操作的刷新控制信号,其中刷新控制电路包括:第一电路,配置为将从存储器设备的外部提供的行锤击段信号发送到行解码器;第二电路,配置为生成指示对所述多个段的刷新操作的刷新段信号;以及第三电路,配置为基于行锤击段信号和刷新段信号生成段掩蔽信号,刷新控制电路进一步配置为在生成刷新段信号的时段内,控制存储器单元阵列对被段掩蔽信号掩蔽的存储器单元区域去掩蔽,并且选择性地对所述多个存储器单元行执行刷新操作。
根据本发明构思的一些方面,提供了一种用于防御行锤击攻击的存储器设备的操作方法,该操作方法包括将多个存储器单元行分组成多个段、生成用于控制对所述多个存储器单元行的刷新操作的刷新控制信号、以及基于刷新控制信号对所述多个段执行刷新操作,其中生成刷新控制信号包括生成从存储器设备的外部提供的行锤击段信号、生成用于指示对所述多个段的刷新操作的刷新段信号、以及基于行锤击段信号和刷新段信号生成段掩蔽信号,对所述多个段执行刷新操作包括基于段掩蔽信号选择性地对存储器单元行执行刷新操作。
根据本发明构思的一些方面,提供了一种存储器系统,其包括存储器设备和配置为向存储器设备发送刷新命令的存储器控制器,其中存储器设备包括:包括多个存储器单元行的存储器单元阵列,所述多个存储器单元行被分组为多个段;连接到所述多个存储器单元行的行解码器;以及刷新控制电路,配置为基于刷新命令生成用于控制对所述多个存储器单元行的刷新操作的刷新控制信号,其中刷新控制电路包括:第一电路,配置为生成从存储器设备的外部提供的行锤击段信号;第二电路,配置为生成用于指示对所述多个段的刷新操作的刷新段信号;以及第三电路,配置为基于行锤击段信号和刷新段信号生成段掩蔽信号,刷新控制电路进一步配置为基于段掩蔽信号选择性地对所述多个存储器单元行执行刷新操作。
附图说明
示例实施例将从以下结合附图的详细描述被更清楚地理解,附图中:
图1是根据一些示例实施例的存储器系统的框图;
图2是根据一些示例实施例的存储器设备的框图;
图3是根据一些示例实施例的控制电路的框图;
图4是根据一些示例实施例的行解码器的框图;
图5A是示出根据一些示例实施例的段的图;
图5B是示出根据一些示例实施例的段的掩蔽信息的图;
图6是根据一些示例实施例的刷新操作的定时图;
图7和图8是示出根据一些示例实施例的刷新操作的概念图;
图9是根据一些示例实施例的存储器设备的操作方法的流程图;
图10和图11是示出根据一些示例实施例的存储器设备的刷新操作的流程图;
图12是示出根据一些示例实施例的在存储器设备的操作方法中重置段的过程的流程图;
图13是示出根据一些示例实施例的在存储器设备的操作方法中对与行锤击地址相邻的行执行刷新操作的过程的流程图;
图14是示出应用根据一些示例实施例的存储器设备的计算机系统的框图;
图15是示出根据一些示例实施例的用于控制行锤的存储器设备的图;以及
图16是示出根据一些示例实施例的包括用于控制行锤的存储器设备的系统的框图。
具体实施方式
简要描述这里使用的术语,并且详细描述示例实施例。
图1是根据一些示例实施例的存储器系统10的框图。
参照图1,根据一些示例实施例的存储器系统10可以包括存储器设备100和主机200。
根据一些示例实施例的存储器设备100可以包括存储器单元阵列110、行解码器120和刷新控制电路130,从主机200接收刷新命令REF_CMD,以及对包括在存储器单元阵列110中的多个段执行刷新操作。
根据一些示例实施例的存储器单元阵列110可以包括多个存储器单元行(未示出),并且所述多个存储器单元行可以被分组为多个段。根据一些示例实施例的段可以是根据预设的(或可选地,期望的或确定的)标准分组的存储器单元行的集合。存储器单元阵列110可以包括多条字线、多条位线以及形成在字线和位线彼此交叉的点处的多个存储器单元。存储器单元阵列110的存储器单元可以是易失性存储器单元,例如动态随机存取存储器(DRAM)单元。
根据一些示例实施例的行解码器120可以连接到存储器单元行。例如,行解码器120可以被布置为对应于存储器单元阵列110的多个存储体。根据一些示例实施例的行解码器120可以对从下面描述的控制逻辑电路接收到的行地址进行解码,从所述多条字线中选择与行地址对应的字线,以及将所选择的字线连接到激活该字线的字线驱动器。例如,行解码器120可以基于段掩蔽信号去激活存储器单元阵列110的一些字线并激活被确定为不被掩蔽的行中包括的字线。
根据一些示例实施例的刷新控制电路130可以配置为将从存储器设备100的外部提供的行锤击段信号发送到行解码器120。例如,刷新控制电路130可以包括第一电路,第一电路将从外部提供的行锤击段信号发送到行解码器120。根据一些示例实施例的第一电路可以是部分阵列自刷新(PASR)控制电路或部分阵列刷新控制(PARC)电路。例如,第一电路可以使用存储器单元行的一部分作为刷新区域并对其所述部分执行刷新操作。根据一些示例实施例的刷新区域可以是未被掩蔽的段。
根据一些示例实施例的刷新控制电路130可以配置为生成用于指示对所述多个段的刷新操作的刷新段信号。例如,刷新控制电路130可以包括第二电路,第二电路生成用于指示对所述多个段的刷新操作的刷新段信号。根据一些示例实施例的第二电路可以是下面描述的普通刷新电路。根据一些示例实施例的刷新控制电路130可以对通过第二电路被掩蔽的段执行刷新操作。
根据一些示例实施例的刷新控制电路130可以配置为基于行锤击段信号和刷新段信号来生成段掩蔽信号。例如,刷新控制电路130可以包括第三电路,第三电路基于行锤击段信号和刷新段信号生成段掩蔽信号。根据一些示例实施例的第三电路可以是段掩蔽控制电路。
例如,第三电路可以控制段掩蔽信号,使得在预设的(或可选地,期望的或确定的)时段中对存储器单元阵列的被掩蔽部分执行刷新操作。根据一些示例实施例的刷新控制电路130可以基于段掩蔽信号选择性地对存储器单元行执行刷新操作。例如,刷新控制电路130可以执行刷新操作,而不管在预设的(或可选地,期望的或确定的)时段中段是否被掩蔽,并在其他时段中对不包括被掩蔽的段的存储器单元行执行刷新操作。根据一些示例实施例的刷新控制电路130参照图3进行详细描述。
根据一些示例实施例的存储器系统10的存储器设备100可以包括DRAM,诸如双倍数据速率同步DRAM(DDR SDRAM)、低功率DDR(LPDDR)SDRAM、图形DDR(GDDR)SDRAM或RambusDRAM(RDRAM)。
根据一些示例实施例的主机200可以包括计算系统,诸如计算机、膝上型计算机、服务器、工作站、便携式通信终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、智能电话或可穿戴设备。此外,根据一些示例实施例的主机200可以包括计算系统中包括的一些部件,诸如图形卡。
主机200可以是在存储器系统10内执行一般计算机操作的功能块并对应于中央处理单元(CPU)、数字信号处理器(DSP)、图形处理单元(GPU)或应用处理器(AP)。根据一些示例实施例的主机200可以包括存储器控制器210,存储器控制器210管理向存储器设备100的数据发送/从存储器设备100的数据接收。
根据一些示例实施例的存储器控制器210可以根据主机200的请求访问存储器设备100。例如,存储器控制器210可以基于主机200的请求将刷新命令REF_CMD发送到存储器设备100。根据一些示例实施例的存储器控制器210可以包括用于与存储器设备100的接口连接(诸如选择与存储器位置对应的行和列、将数据写入存储器位置、或读取写入的数据)的存储器物理层接口(PHY)。存储器PHY可以包括为存储器控制器210和存储器设备100之间的高效通信所需的信号、频率、定时、驱动、详细操作参数和功能性提供的物理或电气层和逻辑层。存储器PHY可以支持联合电子器件工程委员会(JEDEC)标准的DDR和/或LPDDR协议的特征。
图2是根据一些示例实施例的存储器设备100的框图。
参照图2,根据一些示例实施例的存储器设备100可以包括存储器单元阵列110、多个行解码器120_1至120_n、控制电路130、控制逻辑电路140、行地址选择器(RA MUX)141、存储体控制逻辑142、列地址锁存器143、多个列解码器150_1至150_n以及输入/输出(I/O)选通电路151。
根据一些示例实施例的存储器单元阵列110可以包括多个存储体110_1至110_n,并且与多个存储体110_1至110_n对应的多个感测放大器可以被布置。
控制逻辑电路140可以从存储器控制器210接收包括存储体地址BA、行地址ROW_ADDR和列地址COL_ADDR的地址ADDR。控制逻辑电路140可以将接收到的存储体地址BA提供给存储体控制逻辑142,将接收到的行地址ROW_ADDR提供给行解码器120,以及将接收到的列地址COL_ADDR提供给列解码器150。
存储器单元阵列110包括以包括行和列的矩阵形式提供的多个存储器单元。存储器单元阵列110包括连接到存储器单元的多条字线和多条位线。多条字线WL可以连接到存储器单元的行,多条位线BL可以连接到存储器单元的列。连接到激活的字线WL的存储器单元的数据可以通过连接到位线BL的感测放大器被感测和放大。
存储器单元阵列110可以包括第一存储体BANK1至第n存储体BANKn:110_1至110_n。存储体控制逻辑142可以响应于存储体地址生成存储体控制信号,并且响应于存储体控制信号,第一存储体BANK1至第n存储体BANKn:110_1至110_n当中与存储体地址对应的存储体的行解码器120和列解码器150可以被激活。尽管在一些示例实施例中示出了包括n个存储体的存储器设备100的示例,但是根据示例实施例,存储器设备100可以包括任意数量的存储体。
行解码器120和列解码器150可以被布置为对应于第一存储体BANK1到第n存储体BANKn:110_1到110_n中的每个,并且连接到与存储体地址对应的存储体的行解码器120和列解码器150可以被激活。行解码器120可以对接收到的行地址ROW_ADDR进行解码,从多条字线WL当中选择与行地址ROW_ADDR对应的字线WL,以及将所选择的字线WL连接到激活字线WL的字线驱动器。
列解码器150可以选择存储器单元阵列110的多条位线BL当中的某些位线BL。列解码器150可以对以突发模式基于列地址COL_ADDR逐渐增加+1的突发地址进行解码以生成列选择信号,并将由列选择信号选择的位线BL连接到I/O选通电路151。突发地址是指可与用于读和/或写命令的突发长度相关地被访问的列位置的地址。
I/O选通电路151可以包括用于存储由列选择信号选择的位线BL的读数据的读数据锁存器和用于将写数据写入到存储器单元阵列110的写驱动器。存储在I/O选通电路151的读数据锁存器中的读数据可以被提供给数据总线。
控制电路130可以接收时钟信号和命令,并生成用于控制存储器设备100的操作定时和/或存储器操作的控制信号。控制电路130可以向存储器设备100的电路提供控制信号,使得存储器设备100根据由模式寄存器集合(MRS)存储的操作和控制参数来操作。控制电路130可以通过使用控制信号从存储器单元阵列110读取数据并将数据写入到存储器单元阵列110。
控制电路130可以控制对存储器单元阵列110的刷新操作在预设的(或可选地,期望的或确定的)时段内执行,以在行锤击监测时间帧期间防御存储器单元行被密集地攻击的行锤击攻击。
图3是根据一些示例实施例的控制电路130的框图。
参照图3,根据一些示例实施例的控制电路130可以包括模式寄存器131、刷新控制电路132和命令解码器133。此外,刷新控制电路132可以包括第一电路134、第二电路135和第三电路136。根据一些示例实施例的第一电路134可以是PASR控制电路或PARC电路。根据一些示例实施例的第二电路135可以是普通刷新电路。根据一些示例实施例的第三电路136可以是段掩蔽电路。
根据一些示例实施例的模式寄存器131可以存储关于存储器单元行的预设的(或可选地,期望的或确定的)信息。例如,模式寄存器131可以存储(并且例如,可以通过接收到的指令或其他方法更新)用于存储器单元行的刷新时段或段掩蔽信息。基于存储在模式寄存器131中的时段,刷新控制电路132可以控制存储器设备100在预设的(或可选地,期望的或确定的)时段内对存储器单元行执行刷新操作。此外,刷新控制电路132可以基于预设的(或可选地,期望的或确定的)段掩蔽信息仅对存储器单元行的一些段执行刷新操作,并更新段信息。
通过包括第一电路134、第二电路135和第三电路136,根据一些示例实施例的刷新控制电路132可以对存储器单元行执行选择性刷新操作。例如,刷新控制电路132可以比较第一电路134和第二电路135的输出并生成段掩蔽信号SEGMASK。此外,刷新控制电路132可以将生成的段掩蔽信号SEGMASK发送到行解码器120。根据一些示例实施例的段掩蔽信号SEGMASK可以是指示对存储器单元行的掩蔽操作的信号。例如,当包括在段掩蔽信号SEGMASK中的掩蔽信息指示对存储器单元行当中的行0至3的掩蔽操作时,可以仅对存储器单元行当中除了行0至3以外的行执行刷新操作。
根据一些示例实施例的刷新控制电路132可以配置为在预设的(或可选地,期望的或确定的)时段内停止输出行锤击段信号RH_SEG。例如,当达到预设的(或可选地,期望的或确定的)时段时,根据一些示例实施例的刷新控制电路132可以配置为停止输出行锤击段信号RH_SEG并将刷新段信号FREF发送到行解码器120。刷新段信号FREF可以以逻辑值LOW来发送。根据一些示例实施例,当刷新段信号FREF的逻辑值为LOW并且行锤击段信号RH_SEG的输出停止时,可以不输出段掩蔽信号SEGMASK。
即,通过在预设的(或可选地,期望的或确定的)时段内生成刷新段信号FREF,刷新控制电路132可以对已经对其执行了掩蔽操作的存储器单元行执行刷新操作。可以根据存储器设备100的信息不同地设置该预设的(或可选地,期望的或确定的)时段。例如,即使当经受行锤击攻击的存储器单元行在预设的(或可选地,期望的或确定的)时段被掩蔽时,刷新控制电路132也可以在发送刷新段信号FREF的时段内对存储器行单元去掩蔽并对其执行刷新操作。
当预设的(或可选地,期望的或确定的)段对应于行锤击地址时,根据一些示例实施例的刷新控制电路132可以配置为将刷新段信号FREF发送到行解码器120。例如,当在基于行锤击段信号RH_SEG掩蔽的存储器单元行中发生行锤击攻击时,刷新控制电路132可以忽略掩蔽信息并对其上行锤击攻击被执行的存储器单元行执行刷新操作。
当已经过去预设的(或可选地,期望的或确定的)时段时,根据一些示例实施例的刷新控制电路132可以配置为更新行锤击段信号RH_SEG并基于更新后的行锤击段信号RH_SEG重置预设的(或可选地,期望的或确定的)段。例如,当已经过去预设的(或可选地,期望的或确定的)时段时,刷新控制电路132可以基于刷新段信号FREF对已对其执行了掩蔽操作的段去掩蔽,对未被掩蔽的段执行刷新操作,以及重置存储器单元行当中的掩蔽区域。当掩蔽区域被重置时,根据一些示例实施例的刷新控制电路132可以基于更新后的行锤击段信号RH_SEG对存储器单元行执行刷新操作。此外,当再次经过了预设的(或可选地,期望的或确定的)时段时,根据一些示例实施例的刷新控制电路132可以基于刷新段信号FREF对被掩蔽的段去掩蔽,对未被掩蔽的段执行刷新操作,以及重置存储器单元行当中的掩蔽区域,从而连续地改变被掩蔽的段的信息。
当行锤击段信号RH_SEG被更新时,根据一些示例实施例的刷新控制电路132可以配置为基于更新后的行锤击段信号RH_SEG来控制是否激活存储器单元行中的至少一个。例如,刷新控制电路132可以将更新后的行锤击段信号RH_SEG发送到行解码器120,并且行解码器120可以基于更新后的行锤击段信号RH_SEG将存储器单元行当中被设为掩蔽区域的段去激活。此外,刷新控制电路132可以激活未被掩蔽的存储器单元行。
根据一些示例实施例的刷新控制电路132可以配置为在预设的(或可选地,期望的或确定的)时段内停止输出更新后的行锤击段信号RH_SEG并输出刷新段信号FREF。此外,根据一些示例实施例的刷新控制电路132可以配置为执行排除存储器单元行当中的掩蔽区域的刷新操作。例如,刷新控制电路132可以基于行锤击段信号RH_SEG对不包括被掩蔽区域的存储器单元行执行刷新操作,直到过去预设的(或可选地,期望的或确定的)时段。然而,在预设的(或可选地,期望的或确定的)时段内,刷新控制电路132可以停止输出行锤击段信号RH_SEG并输出刷新段信号FREF,以对被掩蔽的存储器单元行区域去掩蔽并对其执行刷新操作。根据一些示例实施例的预设的(或可选地,期望的或确定的)时段可以基于存储器设备100的性能、信息或用户设置来确定。
当预设的(或可选地,期望的或确定的)段对应于行锤击地址时,根据一些示例实施例的刷新控制电路132可以配置为对与对应于行锤击地址的行相邻的行执行刷新操作。当对特定存储器单元行执行行锤击攻击时,存储器单元行区域中的电荷量的变化也可能影响与其相邻的存储器单元行区域。通过对与对应于行锤击地址的行相邻的行执行刷新操作,根据一些示例实施例的刷新控制电路132可以追求相邻存储器单元行的稳定性。例如,当在第N行中发生行锤击攻击时,刷新控制电路132可以控制对第N+1行和第N-1行也执行刷新操作。然而,与第N行相邻的行不限于第N+1行和第N-1行,并且可以进一步包括可能受电特性影响的存储器单元行。
根据一些示例实施例的刷新控制电路132可以配置为执行区分行锤击段信号RH_SEG和刷新段信号FREF的NOR门的操作。例如,通过执行NOR门的操作,当行锤击段信号RH_SEG的逻辑值为LOW并且刷新段信号FREF的逻辑值为LOW时,刷新控制电路132可以输出段掩蔽信号SEGMASK。即,当确定未发生行锤击攻击并且不需要对被掩蔽的区域的刷新操作时,根据一些示例实施例的刷新控制电路132可以对存储器单元行执行掩蔽操作。例如,刷新控制电路132可以在过去预设的(或可选地,期望的或确定的)时段之前确定不需要对被掩蔽的区域的刷新操作,并对存储器单元行执行掩蔽操作。
根据一些示例实施例的刷新控制电路132可以进一步包括用于对预设的(或可选地,期望的或确定的)时段进行计数的计数器(未示出)。
图4是根据一些示例实施例的行解码器120的框图。
参照图4,根据一些示例实施例的行解码器120可以包括分别与存储器单元阵列110中存在的多个存储体对应的多个字线使能电路121_1至121_n。根据一些示例实施例的字线使能电路121_1至121_n可以控制是否激活所述多个存储体的每个中存在的字线。例如,刷新控制电路132可以将行锤击段信号RH_SEG发送到行解码器120,并且行解码器120可以基于更新后的行锤击段信号RH_SEG生成字线使能信号WL_EN。根据一些示例实施例的存储器设备100可以基于字线使能信号WL_EN将存储器单元行当中被设为掩蔽区域的字线去激活,并且刷新控制电路132可以激活未被掩蔽的字线。
图5A是示出根据一些示例实施例的段的图。
参照图5A,根据一些示例实施例的存储器单元阵列110可以包括多个存储体。在下文中,在图5A中,在所述多个存储体当中,描述根据一些示例实施例的第一存储体110_1。然而,所述多个存储体可以具有与第一存储体110_1相同或相似的技术特征并构成存储器单元阵列110。
根据一些示例实施例的第一存储体110_1可以包括多个段,例如,第一段SEG[0]至第m段SEG[m-1]。根据一些示例实施例的段可以包括多条字线、多条位线和存储器单元。例如,第一段SEG[0]的第一区域110_1a可以包括多条字线WL1至WLi、多条位线BL1至BLj以及存储器单元MC。根据一些示例实施例的段可以具有与第一段SEG[0]相同或相似的技术特征并构成存储器单元阵列110。
图5B是示出根据一些示例实施例的段的掩蔽信息的图。
参照图5B,根据一些示例实施例的存储器设备100可以基于段掩蔽信号SEGMASK对预设的(或可选地,期望的或确定的)段执行掩蔽操作。当示例段掩蔽信号SEGMASK:MR23指示掩蔽第三段Segment2和第八段Segment7时,可以掩蔽包括在存储器单元阵列110中的多个存储体Bank0至Bank7当中的第三段Segment2和第八段Segment7。
根据一些示例实施例的存储器设备100可以执行排除被掩蔽的段的刷新操作。即,通过掩蔽一些段,存储器设备100可以选择性地执行刷新操作。然而,如上所述,当对被掩蔽的区域执行行锤击攻击时,根据一些示例实施例的存储器设备100还可以对被掩蔽的段执行刷新操作。此外,根据一些示例实施例的存储器设备100还可以在预设的(或可选地,期望的或确定的)时段内对被掩蔽的段执行刷新操作,以防御意外发生的行锤击攻击。此外,通过使用上述示例实施例,数据可以被更安全地存储,并且恶意行为者访问存储设备的敏感数据、机密数据、技术数据等的能力可以被降低和/或具有降低的能力。因此,改善的设备和方法克服了常规设备和方法在行锤击保护方面的缺陷,同时减少资源消耗并提高数据清晰度/安全性。例如,通过使用所公开的方法,数据(更具体地,被掩蔽的数据)的刷新是可能的并且需要更少的资源,诸如存储器访问和/或驱动电路以保护所存储的数据的电力。
图6是根据一些示例实施例的刷新操作的定时图。根据一些示例实施例的CNT可以是用于确定本公开中提供的信号的周期的时钟信号。
参照图6,在预设的(或可选地,期望的或确定的)时段内,根据一些示例实施例的存储器设备100可以基于行锤击段信号RH_SEG和刷新段信号FREF对被掩蔽的段去掩蔽并执行刷新操作。
例如,在第一时段T1中,存储器设备100可以将行锤击段信号RH_SEG和刷新段信号FREF的逻辑值生成为HIGH并停止输出段掩蔽信号SEGMASK。当停止段掩蔽信号SEGMASK的输出时,根据一些示例实施例的存储器设备100还可以对之前被掩蔽的段执行刷新操作。
当已经过去了第一时段T1时,根据一些示例实施例的存储器设备100可以将行锤击段信号RH_SEG和刷新段信号FREF的逻辑值保持为LOW。当行锤击段信号RH_SEG和刷新段信号FREF的逻辑值保持为LOW时,可以输出根据一些示例实施例的段掩蔽信号SEGMASK,并且可以掩蔽预设的(或可选地,期望的或确定的)段。当输出段掩蔽信号SEGMASK时,根据一些示例实施例的存储器设备100可以执行排除被掩蔽的段的刷新操作。
当已经过去了预设的(或可选地,期望的或确定的)时间T时,在第二时段T2中,根据一些示例实施例的存储器设备100可以将行锤击段信号RH_SEG和刷新段信号FREF的逻辑值生成为HIGH并停止输出段掩蔽信号SEGMASK。根据一些示例实施例的存储器设备100可以在第二时段T2中更新关于稍后将被掩蔽的段的信息。例如,存储器设备100可以生成更新后的行锤击段信号RH_SEG。
当已经过去了第二时段T2时,根据一些示例实施例的存储器设备100可以将行锤击段信号RH_SEG和刷新段信号FREF的逻辑值再次保持为LOW。在第二时段T2之后且在第三时段T3之前生成的行锤击段信号RH_SEG可以是更新后的信号,并且在第二时段T2之后且在第三时段T3之前输出的段掩蔽信号SEGMASK也可以被更新。基于更新后的段掩蔽信号SEGMASK,存储器设备100可以对在前一时段内被掩蔽的段去掩蔽并对新的段执行掩蔽操作。当输出段掩蔽信号SEGMASK时,根据一些示例实施例的存储器设备100可以执行排除被掩蔽的段的刷新操作。
当已经过去了预设的(或可选地,期望的或确定的)时间T时,在第三时段T3中,根据一些示例实施例的存储器设备100可以将行锤击段信号RH_SEG和刷新段信号FREF的逻辑值再次成生为HIGH,并停止输出段掩蔽信号SEGMASK。
通过重复上述过程,根据一些示例实施例的存储器设备100也可以对被掩蔽的段周期性地执行刷新操作。
图7和图8是示出根据一些示例实施例的刷新操作的概念图。
参照图7,当根据一些示例实施例的存储器设备100接收到写命令MRW时,行锤击段信号RH_SEG和刷新段信号FREF的逻辑值可以在预设的(或可选地,期望的或确定的)时间T内被保持为LOW。当行锤击段信号RH_SEG和刷新段信号FREF的逻辑值保持为LOW时,根据一些示例实施例的段掩蔽信号SEGMASK可以被输出并且预设的(或可选地,期望的或确定的)段可以被掩蔽。当输出段掩蔽信号SEGMASK时,根据一些示例实施例的存储器设备100可以基于刷新激活信号REF_ACT执行排除被掩蔽的段的刷新操作。
当已经过去了预设的(或可选地,期望的或确定的)时间T时,在第一时段T1中,存储器设备100可以将行锤击段信号RH_SEG和刷新段信号FREF的逻辑值生成为HIGH并停止输出段掩蔽信号SEGMASK。当停止段掩蔽信号SEGMASK的输出时,根据一些示例实施例的存储器设备100还可以对之前被掩蔽的段执行刷新操作。例如,存储器设备100可以通过生成选择性刷新信号F对被掩蔽的段执行刷新操作,并通过生成普通刷新信号N对非掩蔽的段执行刷新操作。
参照图8,当根据一些示例实施例的存储器设备100接收到写命令MRW时,仅行锤击段信号RH_SEG的逻辑值可以被设为HIGH,并且可以对第一段SEG0至第四段SEG3执行掩蔽操作。即使当在写刷新操作时段tREFW中发生恶意攻击时,根据一些示例实施例的存储器设备100也可以仅对第五段SEG4至第八段SEG7执行刷新操作。
然而,在存储器设备100接收到写命令MRW的情况下,当行锤击段信号RH_SEG和刷新段信号FREF的逻辑值被设为HIGH并且不输出段掩蔽信号SEGMASK时,也可以对第一段SEG0至第四段SEG3执行刷新操作。即使当在写刷新操作时段tREFW中发生恶意攻击时,根据一些示例实施例的存储器设备100也可以对第一段SEG0至第八段SEG7的全部执行刷新操作。
图9是根据一些示例实施例的存储器设备的操作方法的流程图。
参照图9,在根据一些示例实施例的存储器设备100中,可以将多个存储器单元行分组成多个段(S910)。
当所述多个存储器单元行被分组成所述多个段时,根据一些示例实施例的存储器设备100可以生成用于控制对存储器单元行的刷新操作的刷新控制信号(S920)。
根据一些示例实施例的存储器设备100的存储器单元阵列110可以包括多个存储器单元行,并且所述多个存储器单元行可以被分组成多个段。根据一些示例实施例的段可以包括多条字线、多条位线以及形成在字线和位线彼此交叉的点处的多个存储器单元。存储器单元阵列110的存储器单元可以是易失性存储器单元,例如DRAM单元。
当生成刷新控制信号时,可以生成从存储器设备100的外部提供的行锤击段信号(S930)。根据一些示例实施例的行锤击段信号可以是PASR控制信号或PARC信号。例如,行锤击段信号可以控制存储器设备100使用存储器单元行的一部分作为刷新区域并且对其的该部分执行刷新操作。根据一些示例实施例的刷新区域可以是未被掩蔽的段。
当生成行锤击段信号时,根据一些示例实施例的存储器设备100可以基于行锤击段信号和刷新段信号生成段掩蔽信号(S940)。例如,当行锤击段信号的逻辑值为LOW并且刷新段信号的逻辑值为LOW时,可以生成并输出段掩蔽信号SEGMASK。
当生成段掩蔽信号时,根据一些示例实施例的存储器设备100可以对所述多个段执行刷新操作(S950)。例如,存储器设备100可以执行排除被掩蔽的段的刷新操作。即,通过掩蔽一些段,存储器设备100可以选择性地执行刷新操作。然而,当对被掩蔽的区域执行行锤击攻击时,根据一些示例实施例的存储器设备100还可以对被掩蔽的段执行刷新操作。此外,根据一些示例实施例的存储器设备100还可以在预设的(或可选地,期望的或确定的)时段内对被掩蔽的段执行刷新操作,以防御意外发生的行锤击攻击。
图10和图11是示出根据一些示例实施例的存储器设备的刷新操作的流程图。
参照图10,可以将刷新命令输入到根据一些示例实施例的存储器设备100(S1010)。根据一些示例实施例的存储器控制器可以根据主机的请求访问存储器设备100。例如,存储器控制器可以基于主机的请求向存储器设备100发送刷新命令。
当输入刷新命令时,根据一些示例实施例的存储器设备100可以确定是否已经过去了预设的(或可选地,期望或确定的)时段(S1020)。根据一些示例实施例的预设的(或可选地,期望的或确定的)时段可以根据存储器设备100的信息不同地设置。
当确定已经过去了预设的(或可选地,期望的或确定的)时段时,根据一些示例实施例的存储器设备100可以停止输出行锤击段信号(S1030)。例如,当达到预设的(或可选地,期望的或确定的)时段时,根据一些示例实施例的存储器设备100可以停止输出行锤击段信号RH_SEG并基于刷新段信号FREF执行刷新操作,而不管段掩蔽操作如何。然而,当确定预设的(或可选地,期望的或确定的)时段尚未过去时,根据一些示例实施例的存储器设备100可以继续输出行锤击段信号(S1040)。
根据一些示例实施例的存储器设备100可以将刷新段信号发送到行解码器(S1050)。根据一些示例实施例的刷新段信号FREF可以以逻辑值LOW被发送。根据一些示例实施例,当刷新段信号FREF的逻辑值为LOW并且停止行锤击段信号RH_SEG的输出时,可以不输出段掩蔽信号SEGMASK。
当刷新段信号被发送到行解码器时,根据一些示例实施例的存储器设备100可以对存储器单元行执行刷新操作(S1060)。在预设的(或可选地,期望的或确定的)时段内,根据一些示例实施例的存储器设备100可以忽略段掩蔽信号并对已对其执行了掩蔽操作的存储器单元行执行刷新操作。此外,通过使用上述示例实施例,数据可以被更安全地存储,并且恶意行为者访问存储设备的敏感数据、机密数据、技术数据等的能力可以降低和/或具有降低的能力。
参照图11,根据一些示例实施例的存储器设备100可以确定是否已经过去了预设的(或可选地,期望的或确定的)时段(S1110)。
当确定已经过去了预设的(或可选地,期望的或确定的)时段时,根据一些示例实施例的存储器设备100可以确定预设的(或可选地,期望的或确定的)段是否对应于行锤击地址(S1120)。
当确定预设的(或可选地,期望的或确定的)段对应于行锤击地址时,根据一些示例实施例的存储器设备100可以将刷新段信号发送到行解码器(S1130)。根据一些示例实施例的刷新段信号FREF可以以逻辑值LOW被发送。根据一些示例实施例,当刷新段信号FREF的逻辑值为LOW并且停止行锤击段信号RH_SEG的输出时,可以不输出段掩蔽信号SEGMASK。
然而,当确定预设的(或可选地,期望的或确定的)段不对应于行锤击地址时,根据一些示例实施例的存储器设备100可以继续输出行锤击段信号(S1140)。
当刷新段信号被发送到行解码器时,根据一些示例实施例的存储器设备100可以对被掩蔽的段执行刷新操作(S1150)。在预设的(或可选地,期望的或确定的)时段内,根据一些示例实施例的存储器设备100可以忽略段掩蔽信号并对已对其执行了掩蔽操作的存储器单元行执行刷新操作。此外,通过使用上述示例实施例,数据可以被更安全地存储,并且恶意行为者访问存储设备的敏感数据、机密数据、技术数据等的能力可以降低和/或具有降低的能力。
图12是示出根据一些示例实施例的在存储器设备的操作方法中重置段的过程的流程图。
参照图12,可以将刷新命令输入到根据一些示例实施例的存储器设备100(S1210)。根据一些示例实施例的存储器控制器可以根据主机的请求访问存储器设备100。例如,存储器控制器可以基于主机的请求向存储器设备100发送刷新命令。
当刷新命令被输入到存储器设备100时,根据一些示例实施例的存储器设备100可以确定是否已经过去了预设的(或可选地,期望的或确定的)时段(S1220)。根据一些示例实施例的预设的(或可选地,期望的或确定的)时段可以根据存储器设备100的信息不同地设置。
当确定已经过去了预设的(或可选地,期望的或确定的)时段时,根据一些示例实施例的存储器设备100可以更新行锤击段信号(S1230)。
然而,当确定预设的(或可选择地,期望的或确定的)时段尚未过去时,根据一些示例实施例的存储器设备100可以输出行锤击段信号(S1240)。
当更新行锤击段信号时,根据一些示例实施例的存储器设备100可以重置预设的(或可选地,期望的或确定的)段(S1250)。
例如,当已经过去了预设的(或可选地,期望的或确定的)时段时,可以基于刷新段信号对被掩蔽的段执行刷新操作,并且可以重置存储器单元行当中的掩蔽区域。当重置掩蔽区域时,根据一些示例实施例的存储器设备100可以基于更新后的行锤击段信号RH_SEG对存储器单元行执行刷新操作。
当重置预设的(或可选地,期望的或确定的)段时,根据一些示例实施例的存储器设备100可以控制是否激活存储器单元行中的至少一个(S1260)。
例如,存储器设备100可以将行锤击段信号发送到行解码器,并且行解码器可以基于更新后的行锤击段信号生成字线使能信号。根据一些示例实施例的存储器设备100可以基于字线使能信号激活存储器单元行当中被设为掩蔽区域的字线,并且刷新控制电路132可以激活未被掩蔽的字线。
图13是示出根据一些示例实施例的在存储器设备的操作方法中对与行锤击地址相邻的行执行刷新操作的过程的流程图。
参照图13,可以将刷新段信号输入到根据一些示例实施例的存储器设备100的刷新控制电路(S1310)。根据一些示例实施例的刷新段信号的逻辑值可以为HIGH或LOW。
当输入刷新段信号时,根据一些示例实施例的存储器设备100可以执行排除存储器单元行当中的掩蔽区域的刷新操作(S1320)。
根据一些示例实施例,当刷新段信号的逻辑值为HIGH时,可以输出段掩蔽信号并且可以不对被掩蔽的段执行刷新操作。然而,根据一些示例实施例,当刷新段信号的逻辑值为LOW并且停止行锤击段信号的输出时,可以不输出段掩蔽信号。
根据一些示例实施例的存储器设备100可以对与对应于行锤击地址的行相邻的行执行刷新操作(S1330)。例如,通过对与对应于行锤击地址的行相邻的行执行刷新操作,存储器设备100可以追求相邻存储器单元行的稳定性。例如,当在第N行中发生行锤击攻击时,存储器设备100可以控制对第N+1行和第N-1行也将执行的刷新操作。然而,与第N行相邻的行不限于第N+1行和第N-1行,并且可以进一步包括可能受电特性影响的存储器单元行。
图14是示出应用根据一些示例实施例的存储器设备的计算机系统的框图。
参照图14,计算机系统1900可以安装在移动设备或台式计算机上。计算机系统1900可以包括电连接到系统总线1904的DRAM存储器系统1901、CPU 1905、用户接口1907和诸如基带芯片组的调制解调器1908。计算机系统1900可以进一步包括应用芯片组、相机图像处理器(CIS)、I/O设备等。
用户接口1907可以是用于向通信网络发送数据或从通信网络接收数据的接口。用户接口1907可以是有线的或无线的,并且可以包括天线或者有线或无线收发器。通过用户接口1907或调制解调器1908提供的数据或者由CPU 1905处理的数据可以存储在DRAM存储器系统1901中。
DRAM存储器系统1901可以包括上面参照图1至图13描述的存储器设备。DRAM存储器系统1901可以包括DRAM 1902和存储器控制器1903。由CPU 1905处理的数据或者从外部输入的数据被存储在DRAM 1902中。DRAM 1902可以确定是否另外执行行锤击处理操作,并且基于该确定,调节对存储器单元阵列的行锤击处理操作的数量。
当计算机系统1900是用于执行无线通信的设备时,计算机系统1900可以用在诸如码分多址(CDMA)、全球移动通信系统(GSM)、北美多址(NADC)或CDMA2000的通信系统中。计算机系统1900可以安装在诸如PDA、便携式计算机、网络平板电脑、数码相机、PMP、移动电话、无线电话或膝上型计算机的信息处理设备上。
图15是示出根据一些示例实施例的用于控制行锤击的存储器设备的图。
图15示出了在高带宽存储器(HBM)中实现的图1的存储器设备100。可以注意到,图15所示的HBM配置作为示例被提供,并且未必是实际的HBM配置。此外,作为示例的图15所示的HBM配置不表示或暗示对本发明构思的限制。在下文中,不同附图中相同附图标记所附的下标(例如,100a中的a)用于区分具有相似或相同功能的多个电路。为了便于描述,存储器设备100a可以可互换地称为HBM 100a。
参照图1和图15,HBM 100a可以通过JEDEC标准的HBM协议连接到主机200(并且进一步连接到存储器控制器210)。HBM协议是用于三维堆叠的存储器(例如,DRAM)的高性能随机存取存储器(RAM)接口。与其他DRAM技术(例如,DDR4、GDDR5等)相比,HBM 100a一般以基本上更小的外形尺寸实现更宽的带宽,同时消耗更少的功率。
HBM 100a可以通过包括多个沟道(例如,具有彼此独立的接口的第一沟道CH1至第八沟道CH8)而具有高带宽。HBM 100a可以包括多个管芯,例如逻辑管芯(或缓冲管芯)910和堆叠在逻辑管芯910上的一个或更多个核心管芯920。尽管图15示出了第一核心管芯921至第四核心管芯924被包括在HBM 100a中的示例,但是核心管芯920的数量可以各种各样地改变。核心管芯920可以被称为存储器管芯。
第一核心管芯921至第四核心管芯924中的每个可以包括一个或更多个沟道。图15示出了第一核心管芯921至第四核心管芯924中的每个包括两个沟道使得HBM 100a具有八个沟道(例如,第一沟道CH1至第八沟道CH8)的示例。例如,第一核心管芯921可以包括第一沟道CH1和第三沟道CH3,第二核心管芯922可以包括第二沟道CH2和第四沟道CH4,第三核心管芯923可以包括第五沟道CH5和第七沟道CH7,第四核心管芯924可以包括第六沟道CH6和第八沟道CH8。
逻辑管芯910可以包括与主机200通信的接口电路911,并且可以通过接口电路911从主机200接收命令/地址和数据。主机200可以通过布置为与第一沟道CH1至第八沟道CH8对应的总线发送命令/地址和数据,并且总线可以形成为针对每个沟道划分,或者一些总线可以由至少两个沟道共享。接口电路911可以将命令/地址和数据发送到主机200通过其请求存储器操作或算术处理的沟道。此外,根据一些示例实施例,每个核心管芯920或第一沟道CH1至第八沟道CH8中的每个可以包括存储器中处理器(PIM)电路。
主机200可以提供命令/地址和数据,使得多个算术任务或内核中的至少一些可以由HBM 100a执行,并且由主机200指定的沟道的PIM电路可以执行算术处理。例如,当接收到的命令/地址指示算术处理时,对应沟道的PIM电路可以通过使用从主机200提供的写数据和/或从对应沟道读取的数据来执行算术处理。在另一示例中,当HBM 100a的对应沟道接收到的命令/地址指示存储器操作时,可以执行数据访问操作。
根据一些示例实施例,第一沟道CH1至第八沟道CH8中的每个可以包括多个存储体,并且第一沟道CH1至第八沟道CH8中的每个的PIM电路可以包括一个或更多个处理元件。例如,第一沟道CH1至第八沟道CH8的每个中的处理元件的数量可以等于存储体的数量,或者当处理元件的数量小于存储体的数量时,可以在至少两个存储体之间共享一个处理元件。第一沟道CH1至第八沟道CH8中的每个的PIM电路可以运行由主机200卸载的内核。
根据一些示例实施例,第一沟道CH1至第八沟道CH8中的每个可以包括参照图1至图13描述的刷新控制电路。第一沟道CH1至第八沟道CH8中的每个可以包括逻辑电路,该逻辑电路指示在行锤击监测时间帧期间被访问的行地址与访问数之间的相关性,并且该逻辑电路可以包括地址表,该地址表存储对应于第一行地址的第一访问数和第一地址条目。第一沟道CH1至第八沟道CH8中的每个可以执行展平操作和随机选择操作,通过这些操作,第一地址条目与具有第二访问数的第二地址条目交换,第二访问数是地址表中的最小值,并且第一沟道CH1至第八沟道CH8中的每个可以随机地执行随机交换操作,通过该随机交换操作,第一地址条目与具有第三访问数的第三地址条目交换,第三访问数不是地址表中的最大值。因此,第一沟道CH1至第八沟道CH8中的每个可以防止或减少具有小访问数的地址条目从寄存器被逐出,并防止或减少黑客模式的行锤击攻击被容易地执行。
逻辑管芯910可以进一步包括贯通硅通路(TSV)区域912、HBM物理层接口(HBMPHY)区域913和串行器/解串器(SERDES)区域914。TSV区域912是其中形成用于与核心管芯920通信的TSV的区域,并且是其中形成被布置为与第一沟道CH1至第八沟道CH8对应的总线的区域。当第一沟道CH1至第八沟道CH8中的每个具有128比特的带宽时,TSV可以包括输入和输出1024比特的数据的配置。
HBM PHY区域913可以包括用于与存储器控制器112以及第一沟道CH1至第八沟道CH8通信的多个I/O电路,并且例如,HBM PHY区域913可以包括用于将第一沟道CH1至第八沟道CH8连接到存储器控制器210的一个或更多个互连电路。HBM PHY区域913可以包括为存储器控制器112与第一沟道CH1至第八沟道CH8之间的高效通信所需的信号、频率、定时、驱动、详细操作参数和功能性提供的物理或电气层和逻辑层。HBM PHY区域913可以执行存储器接口连接,诸如选择与对应沟道的存储器单元对应的行和列、将数据写入存储器单元中、或者从存储器单元读取写入的数据。HBM PHY区域913可以支持JEDEC标准的HBM协议的特征。
SERDES区域914是用于随着主机200的处理器的处理吞吐量增加并且随着存储器带宽的需求增加而提供JEDEC标准的SERDES接口的区域。SERDES区域914可以包括SERDES发送器、SERDES接收器和控制器。SERDES发送器可以包括并串电路和发送器,接收并行数据流,以及将接收到的并行数据流串行化。SERDES接收器可以包括接收放大器、均衡器、时钟和数据恢复电路以及串并电路,接收串行数据流,以及将接收到的串行数据流并行化。控制器可以包括错误检测电路、错误校正电路和诸如先进先出(FIFO)的寄存器。
图16是示出根据一些示例实施例的包括用于控制行锤击的存储器设备的系统的框图。
参照图16,系统1000可以包括相机1100、显示器1200、音频处理器1300、调制解调器1400、DRAM 1500a和1500b、闪速存储器1600a和1600b、I/O设备1700a和1700b以及AP1800。系统1000可以被实现为膝上型计算机、移动电话、智能电话、平板个人计算机(PC)、可穿戴设备、医疗保健设备或物联网(IOT)设备。此外,系统1000可以被实现为服务器或PC。
相机1100可以在用户的控制下捕捉静止图像或运动图像,并且可以存储捕捉到的图像和图像数据或者将捕捉到的图像和图像数据发送到显示器1200。音频处理器1300可以处理包括在闪速存储器1600a和1600b或网络的内容中的音频数据。调制解调器1400可以将用于有线/无线数据发送/接收的调制信号发送到接收器,并且调制后的信号可以由接收器解调以恢复原始信号。I/O设备1700a和1700b可以包括提供数字输入功能和/或数字输出功能的设备,诸如通用串行总线(USB)或存储、数码相机、安全数字(SD)卡、数字多功能盘(DVD)、网络适配器和触摸屏。
AP 1800可以控制系统1000的所有操作。AP 1800可以控制显示器1200,使得存储在闪速存储器1600a和1600b中的内容的一部分显示在显示器1200上。当通过I/O设备1700a和1700b接收到用户输入时,AP 1800可以执行与用户输入对应的控制操作。AP 1800可以包括用于人工智能(AI)数据操作的专用电路的加速器块,或者可以包括与AP 1800分离的加速器芯片1820。DRAM 1500b可以另外安装在加速器块或加速器芯片1820中。加速器块是专门执行AP 1800的某些功能的功能块,并且可以包括:GPU,其是专门处理图形数据的功能块;神经处理单元(NPU),其是专门用于AI计算和推理的块;以及数据处理单元(DPU),其是专门用于数据传输的块。
系统1000可以包括多个DRAM 1500a和1500b。AP 1800可以通过符合JEDEC标准的命令和MRS来控制DRAM 1500a和1500b,或者通过设置DRAM接口协议来执行通信以使用公司特定的功能,诸如低电压、高速和可靠性以及循环冗余校验(CRC)/纠错码(ECC)功能。例如,AP 1800可以通过符合JEDEC标准的接口(诸如LPDDR4或LPDDR5)与DRAM 1500a通信,加速器块或加速器芯片1820可以通过设置新的DRAM接口协议来执行通信以控制DRAM 1500b用于具有比DRAM 1500a更高带宽的加速器。
尽管图16仅示出了DRAM 1500a和1500b,但本发明构思不限于此。只要满足AP1800或加速器芯片1820的带宽、响应速度和电压条件,就可以使用任何存储器,诸如相变RAM(PRAM)、静态RAM(SRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、铁电RAM(FRAM)或混合RAM。DRAM 1500a和1500b具有比I/O设备1700a和1700b或闪速存储器1600a和1600b相对更小的延迟和带宽。DRAM 1500a和1500b可以在系统1000通电时被初始化,在加载操作系统和应用数据时用作操作系统和应用数据的临时存储,或者用作各种软件代码的运行空间。
DRAM 1500a和1500b可以执行四种算术运算,包括加法、减法、乘法和除法、向量运算、地址运算,或者可以执行快速傅立叶变换(FFT)运算。此外,DRAM 1500a和1500b可以执行用于推理的功能。这里,可以使用人工神经网络在深度学习算法中执行推理。深度学习算法可以包括通过各种数据学习模型的训练操作和通过使用学习后的模型识别数据的推理操作。根据一些示例实施例,用户通过相机1100捕捉到的图像被信号处理并存储在DRAM1500b中,并且加速器块或加速器芯片1820可以执行AI数据操作,以通过使用存储在DRAM1500b中的数据和用于推理的函数来识别数据。
系统1000可以包括具有比DRAM 1500a和1500b更大的容量的多个存储或闪速存储器1600a和1600b。加速器块或加速器芯片1820可以通过使用闪速存储器1600a和1600b来执行训练操作和AI数据操作。根据一些示例实施例,闪速存储器1600a和1600b可以通过使用包括在存储器控制器1610中的计算设备高效地执行由AP 1800和/或加速器芯片1820执行的训练操作和推理AI数据操作。闪速存储器1600a和1600b可以存储由相机1100拍摄的照片或通过数据网络发送的数据。例如,闪速存储器1600a和1600b可以存储增强现实/虚拟现实、高清晰度(HD)或超高清晰度(UHD)内容。
在系统1000中,DRAM 1500a和1500b可以包括参照图1至图13描述的刷新控制电路。DRAM 1500a和1500b可以包括逻辑电路,该逻辑电路指示在行锤击监测时间帧期间被访问的行地址与访问数之间的相关性,并且该逻辑电路可以包括地址表,该地址表存储对应于第一行地址的第一访问数和第一地址条目。DRAM 1500a和1500b可以执行展平操作和随机选择操作,通过这些操作,第一地址条目与具有第二访问数的第二地址条目交换,第二访问数是地址表中的最小值,并且DRAM 1500a和1500b可以随机地执行随机交换操作,通过该随机交换操作,第一地址条目与具有第三访问数的第三地址条目交换,第三访问数不是地址表中的最大值。因此,DRAM 1500a和1500b可以防止或减少具有小访问数的地址条目从寄存器被逐出,并防止或减少黑客模式的行锤击攻击被容易地执行。
如这里所描述的,根据任何示例实施例的任何电子设备和/或其部分可以包括处理电路的一个或更多个实例、可以被包括在处理电路的一个或更多个实例中、和/或可以由处理电路的一个或更多个实例来实现,处理电路的所述一个或更多个实例诸如为:包括逻辑电路的硬件;硬件/软件组合,诸如运行软件的处理器;或其任意组合。例如,处理电路更具体地可以包括但不限于中央处理单元(CPU)、算术逻辑单元(ALU)、图形处理单元(GPU)、应用处理器(AP)、数据信号处理器(DSP)、微型计算机、现场可编程门阵列(FPGA)、可编程逻辑单元、微处理器、专用集成电路(ASIC)、神经网络处理单元(NPU)、电子控制单元(ECU)、图像信号处理器(ISP)等。在一些示例实施例中,处理电路可以包括:存储指令程序的非暂时性计算机可读存储设备(例如,存储器),例如DRAM设备);以及处理器(例如,CPU),其配置为运行指令程序以实现由根据任何示例实施例和/或其任何部分的任何设备、系统、模块、单元、控制器、电路、架构和/或其部分中的一些或全部执行的功能和/或方法。
虽然已经参照本发明构思的示例实施例具体示出和描述了本发明构思,但是将理解,在不脱离所附权利要求的精神和范围的情况下,可以在其中进行形式和细节上的各种改变。
Claims (20)
1.一种存储器设备,包括:
包括多个存储器单元行的存储器单元阵列,所述多个存储器单元行被分组为多个段;
连接到所述多个存储器单元行的行解码器;以及
刷新控制电路,配置为生成用于控制对所述多个存储器单元行的刷新操作的刷新控制信号,并且基于刷新控制信号对所述多个段执行刷新操作,
刷新控制电路包括:
第一电路,配置为将从存储器设备的外部提供的行锤击段信号发送到行解码器;
第二电路,配置为生成指示对所述多个段的刷新操作的刷新段信号;以及
第三电路,配置为基于行锤击段信号和刷新段信号生成段掩蔽信号,以及
刷新控制电路进一步配置为在生成刷新段信号的时段内,控制存储器单元阵列对被段掩蔽信号掩蔽的存储器单元区域去掩蔽,并且选择性地对所述多个存储器单元行执行刷新操作。
2.根据权利要求1所述的存储器设备,其中,基于与行锤击地址对应的段,刷新控制电路进一步配置为将刷新段信号发送到行解码器。
3.根据权利要求1所述的存储器设备,其中,刷新控制电路进一步配置为在一时段内停止输出行锤击段信号。
4.根据权利要求1所述的存储器设备,其中,刷新控制电路进一步配置为基于已经过去的时段更新行锤击段信号并且基于更新后的行锤击段信号重置段。
5.根据权利要求4所述的存储器设备,其中,刷新控制电路进一步配置为基于更新后的行锤击段信号控制是否激活所述多个存储器单元中的至少一个。
6.根据权利要求4所述的存储器设备,其中,刷新控制电路进一步配置为在所述时段内停止输出更新后的行锤击段信号并输出刷新段信号。
7.根据权利要求1所述的存储器设备,其中,刷新控制电路进一步配置为执行排除所述多个存储器单元行当中的掩蔽区域的刷新操作。
8.根据权利要求1所述的存储器设备,其中,基于与行锤击地址对应的段,刷新控制电路进一步配置为对与对应于行锤击地址的行相邻的行执行刷新操作。
9.根据权利要求1所述的存储器设备,其中,刷新控制电路进一步配置为执行NOR门的操作以区分行锤击段信号与刷新段信号。
10.根据权利要求1所述的存储器设备,其中,刷新控制电路进一步包括配置为对时段进行计数的计数器。
11.一种用于防御行锤击攻击的存储器设备的操作方法,所述操作方法包括:
将多个存储器单元行分组成多个段;
生成用于控制对所述多个存储器单元行的刷新操作的刷新控制信号;以及
基于刷新控制信号对所述多个段执行刷新操作,
生成刷新控制信号包括:
生成从存储器设备的外部提供的行锤击段信号;
生成用于指示对所述多个段的刷新操作的刷新段信号;以及
基于行锤击段信号和刷新段信号生成段掩蔽信号,
对所述多个段执行刷新操作包括基于段掩蔽信号选择性地对存储器单元行执行刷新操作。
12.根据权利要求11所述的操作方法,其中,
基于与行锤击地址对应的段,生成段掩蔽信号包括将刷新段信号发送到行解码器,以及
对所述多个段执行刷新操作进一步包括对被掩蔽的段执行刷新操作。
13.根据权利要求11所述的操作方法,其中,生成刷新控制信号进一步包括在时段内停止行锤击段信号的输出。
14.根据权利要求11所述的操作方法,其中,基于已经过去的时段,生成刷新控制信号进一步包括:
更新行锤击段信号;以及
基于更新后的行锤击段信号重置段。
15.根据权利要求14所述的操作方法,其中,生成刷新控制信号进一步包括基于更新后的行锤击段信号控制是否激活所述多个存储器单元行中的至少一个。
16.根据权利要求14所述的操作方法,其中,生成刷新控制信号进一步包括在所述时段内停止更新后的行锤击段信号的输出并输出刷新段信号。
17.根据权利要求11所述的操作方法,其中,基于行锤击段信号输入到存储器设备,对所述多个段执行刷新操作进一步包括执行排除所述多个存储器单元行当中的掩蔽区域的刷新操作。
18.根据权利要求11所述的操作方法,其中,基于与行锤击地址对应的段,对所述多个段执行刷新操作进一步包括对与对应于行锤击地址的行相邻的行执行刷新操作。
19.一种存储器系统,包括:
存储器设备;以及
存储器控制器,配置为向存储器设备发送刷新命令,
存储器设备包括:
包括多个存储器单元行的存储器单元阵列,所述多个存储器单元行被分组为多个段;
连接到所述多个存储器单元行的行解码器;以及
刷新控制电路,配置为基于刷新命令生成用于控制对所述多个存储器单元行的刷新操作的刷新控制信号,并且基于刷新控制信号对所述多个段执行刷新操作,
刷新控制电路包括:
第一电路,配置为生成从存储器设备的外部提供的行锤击段信号;
第二电路,配置为生成用于指示对所述多个段的刷新操作的刷新段信号;以及
第三电路,配置为基于行锤击段信号和刷新段信号生成段掩蔽信号,
刷新控制电路进一步配置为基于段掩蔽信号选择性地对所述多个存储器单元行执行刷新操作。
20.根据权利要求19所述的存储器系统,其中,基于与行锤击地址对应的段,刷新控制电路进一步配置为将刷新段信号发送到行解码器。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0149884 | 2022-11-10 | ||
KR1020230041535A KR20240068513A (ko) | 2022-11-10 | 2023-03-29 | 메모리 장치, 메모리 장치의 동작 방법 및 메모리 시스템 |
KR10-2023-0041535 | 2023-03-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118016117A true CN118016117A (zh) | 2024-05-10 |
Family
ID=90943482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311491691.5A Pending CN118016117A (zh) | 2022-11-10 | 2023-11-09 | 存储器设备、存储器设备的操作方法和存储器系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118016117A (zh) |
-
2023
- 2023-11-09 CN CN202311491691.5A patent/CN118016117A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11790981B2 (en) | Method of performing internal processing operation of memory device | |
US11961548B2 (en) | Memory device and method for controlling row hammer | |
US20230178140A1 (en) | Memory devices and methods for controlling row hammer | |
US20230205428A1 (en) | Memory module and memory system including row hammer counter chip and operating method thereof | |
US20230128653A1 (en) | Memory device and method for controlling row hammer | |
US20220383935A1 (en) | Memory device and method of controlling row hammer | |
EP4156186A2 (en) | Memory device for reducing timing parameters and power consumption for internal processing operation and method of implementing the same | |
US11967352B2 (en) | Method of controlling row hammer and a memory device | |
EP4376006A1 (en) | Memory device, operating method of memory device, and memory system | |
CN118016117A (zh) | 存储器设备、存储器设备的操作方法和存储器系统 | |
US20210382638A1 (en) | Data scrambler to mitigate row hammer corruption | |
US20220155991A1 (en) | Increasing random access bandwidth of a DDR memory in a counter application | |
KR20240068513A (ko) | 메모리 장치, 메모리 장치의 동작 방법 및 메모리 시스템 | |
US20240096391A1 (en) | Memory devices and methods thereof for managing row hammer events therein | |
US20240096395A1 (en) | Device, operating method, memory device, and cxl memory expansion device | |
KR20220159860A (ko) | 로우 해머 제어 방법 및 메모리 장치 | |
US20240071446A1 (en) | Apparatuses and methods for providing command having on-the-fly (otf) latency to memory | |
US20240144988A1 (en) | Memory device, memory system including memory device, and method of operating memory device | |
TW202414406A (zh) | 記憶體裝置、操作記憶體裝置的方法以及電子裝置 | |
US20230128183A1 (en) | Backward compatible processing-in-memory (pim) protocol | |
KR20230086543A (ko) | 로우 해머 제어 방법 및 메모리 장치 | |
CN116092547A (zh) | 存储器装置、存储器系统及该存储器装置的操作方法 | |
CN117746942A (zh) | 装置、操作方法、存储器装置和cxl存储器扩展装置 | |
CN117631988A (zh) | 用于向存储器提供具有空中时延的命令的装置和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |