存储器控制器及其操作方法与流程
未命名
07-14
阅读:80
评论:0
存储器控制器及其操作方法
1.相关申请的交叉引用
2.本技术要求于2021年12月31日提交的、申请号为10-2021-0193757的韩国专利申请的优先权,该韩国专利申请的全部公开内容通过引用并入本文。
技术领域
3.本公开涉及一种电子装置,并且更具体地,涉及一种存储器控制器及其操作方法。
背景技术:
4.存储装置是在诸如计算机或智能电话的主机装置的控制下存储数据的装置。存储装置可以包括存储数据的存储器装置以及控制存储器装置的存储器控制器。存储器装置被划分为易失性存储器装置和非易失性存储器装置。
5.易失性存储器装置是仅在供电时存储数据并且在供电切断时丢失所存储的数据的装置。易失性存储器装置包括静态随机存取存储器(sram)、动态随机存取存储器(dram)等。
6.非易失性存储器装置是即使电力被切断也不丢失数据的装置。非易失性存储器装置包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)、闪速存储器等。
技术实现要素:
7.本公开的实施例提供了一种具有优化的训练性能的存储器控制器及其操作方法。
8.根据本公开的实施例,一种存储器控制器可以包括训练控制器、训练数据存储装置和机器学习处理器。训练控制器可以执行校正与存储器装置交换的接口信号的训练,生成作为训练结果的训练数据,并且基于训练参考和训练数据的比较结果输出训练数据作为样本训练数据。训练数据存储装置可以存储包括多条样本训练数据的训练历史信息。机器学习处理器可以基于训练历史信息,通过机器学习来更新训练参考。
9.根据本公开的实施例,一种操作存储器控制器的方法可以包括:执行校正与存储器装置交换的接口信号的训练;基于作为训练结果的训练数据与训练参考的比较结果,存储训练数据作为样本训练数据;并且基于包括多条样本训练数据的训练历史信息,通过机器学习来更新训练参考。
10.根据本公开的实施例,一种装置的操作方法可以包括:校准待与外部装置交换的信号;当校准信号的至少一个定时偏移(timing offset)落入阈值范围内时,累积表示该至少一个定时偏移的信息;并且基于所累积的信息更新阈值范围。
11.根据本技术,提供了一种具有优化的训练性能的存储器控制器及其操作方法。
附图说明
12.图1是示出根据本公开的实施例的存储装置的示图。
13.图2是示出根据本公开的实施例的图1的存储器控制器的结构和操作的示图。
14.图3是示出根据本公开的实施例的训练数据的示图。
15.图4是示出根据本公开的实施例的用于训练数据的信号眼裕量检查(signal eye margin check)的示图。
16.图5是示出根据本公开的实施例的训练参考的示图。
17.图6是示出根据本公开的实施例的存储器控制器的操作的流程图。
18.图7是示出根据本公开的实施例的存储器控制器的操作的流程图。
19.图8是示出根据本公开的实施例的存储器控制器的操作的流程图。
20.图9是示出根据本公开的实施例的存储器控制器的操作的流程图。
21.图10是示出根据本公开的实施例的存储器控制器的操作的流程图。
22.图11是示出根据本公开的另一实施例的图1的存储器控制器的示图。
23.图12是示出应用了根据本公开的实施例的存储装置的存储卡系统的框图。
24.图13是示出应用了根据本公开的实施例的存储装置的固态驱动器(ssd)系统的框图。
25.图14是示出应用了根据本公开的实施例的存储装置的用户系统的框图。
具体实施方式
26.示出根据本说明书公开的构思的实施例的特定结构或功能描述仅仅是为了描述根据本公开的构思的实施例。根据本公开的构思的实施例可以以各种形式来执行,并且不应被解释为限于本说明书中描述的实施例。
27.图1是示出根据本公开的实施例的存储装置的示图。
28.参照图1,存储装置50可以包括存储器装置100以及控制存储器装置的操作的存储器控制器200。存储装置50是在诸如以下的主机300的控制下存储数据的装置:移动电话、智能电话、mp3播放器、膝上型计算机、台式计算机、游戏机、tv、平板pc或车载信息娱乐系统。
29.根据作为与主机300的通信方法的主机接口,存储装置50可以被制造为各种类型的存储装置中的一种。例如,存储装置50可以被配置为诸如以下的各种类型的存储装置中的任意一种:ssd,mmc、emmc、rs-mmc和微型mmc形式的多媒体卡,sd、迷你sd和微型sd形式的安全数字卡,通用串行总线(usb)存储装置,通用闪存(ufs)装置,个人计算机存储卡国际协会(pcmcia)卡型存储装置,外围组件互连(pci)卡型存储装置,高速pci(pci-e或pcie)卡型存储装置,紧凑型闪存(cf)卡,智能媒体卡和记忆棒。
30.存储装置50可以被制造为各种类型的封装中的任意一种。例如,存储装置50可以被制造为诸如以下的各种封装类型中的任意一种:堆叠封装(pop)、系统级封装(sip)、片上系统(soc)、多芯片封装(mcp)、板上芯片(cob)、晶圆级制造封装(wfp)和晶圆级堆叠封装(wsp)。
31.存储器装置100可以存储数据。存储器装置100在存储器控制器200的控制下进行操作。存储器装置100可以包括存储器单元阵列,存储器单元阵列包括存储数据的多个存储器单元。
32.存储器单元中的每一个可以被配置为存储一个数据位的单层单元(slc)、存储两个数据位的多层单元(mlc)、存储三个数据位的三层单元(tlc)或存储四个数据位的四层单
元(qlc)。
33.在实施例中,存储器装置100可以包括随机存取存储器ram和非易失性存储器(nvm)。
34.在实施例中,存储器装置100可以是双倍数据速率同步动态随机存取存储器(ddr sdram)、第四代低功率双倍数据速率(lpddr4)sdram、图形双倍数据速率(gddr)sdram、低功率ddr(lpddr)、rambus动态随机存取存储器(rdram)、nand闪速存储器、垂直nand闪速存储器、nor闪速存储器、电阻式随机存取存储器(rram)、相变随机存取存储器(pram)、磁阻随机存取存储器(mram)、铁电随机存取存储器(fram)、自旋转移扭矩随机存取存储器(stt-ram)等。
35.存储器装置100被配置为从存储器控制器200接收命令和地址,并且访问存储器单元阵列中由该地址选择的区域。也就是说,存储器装置100可以对由该地址选择的区域执行由该命令指示的操作。例如,存储器装置100可以执行写入操作(编程操作)、读取操作和擦除操作。在编程操作期间,存储器装置100可以将数据编程到由地址选择的区域。在读取操作期间,存储器装置100可以从由地址选择的区域读取数据。在擦除操作期间,存储器装置100可以擦除由地址选择的区域中存储的数据。
36.存储器控制器200控制存储装置50的全部操作。
37.在实施例中,存储器控制器200可以从主机300接收数据和逻辑块地址(lba),并且将lba转换为物理块地址(pba),pba指示待存储存储器装置100中包括的数据的存储器单元的地址。
38.存储器控制器200可以响应于主机300的请求而控制存储器装置100执行编程操作、读取操作或擦除操作。在编程操作期间,存储器控制器200可以将写入命令、物理块地址和数据提供到存储器装置100。在读取操作期间,存储器控制器200可以将读取命令和物理块地址提供到存储器装置100。在擦除操作期间,存储器控制器200可以将擦除命令和物理块地址提供到存储器装置100。
39.在实施例中,存储器控制器200可以控制至少两个存储器装置100。在这种情况下,存储器控制器200可以根据交错方法来控制存储器装置100以提高操作性能。交错方法可以是用于至少两个存储器装置100的操作时段重叠的操作方法。
40.主机300可以使用诸如以下的各种通信标准或接口中的至少一种与存储装置50通信:通用串行总线(usb)、串行at附件(sata)、串列scsi(sas)、高速芯片间(hsic)、小型计算机系统接口(scsi)、外围组件互连(pci)、高速pci(pcie)、高速非易失性存储器(nvme)、通用闪存(ufs)、安全数字(sd)、多媒体卡(mmc)、嵌入式mmc(emmc)、双列直插式存储器模块(dimm)、寄存式dimm(rdimm)和负载减小的dimm(lrdimm)。
41.图2是示出根据本公开的实施例的图1的存储器控制器的结构和操作的示图。
42.参照图2,存储器控制器200可以与存储器装置100交换接口信号sigs并且与存储器装置100通信。接口信号sigs可以包括用于随机存取存储器(ram)的接口信号以及用于非易失性存储器(nvm)的接口信号中的至少一个。
43.存储器控制器200可以包括训练控制器210、训练数据存储装置220和机器学习处理器230。
44.训练控制器210可以执行校正与存储器装置100交换的接口信号sigs的训练。训练
控制器210可以生成作为训练结果的训练数据tr_data。训练数据tr_data可以包括温度数据、电压数据以及指示接口信号sigs的定时偏移的校准数据中的至少一个。
45.训练控制器210可以基于训练参考tr_ref和训练数据tr_data的比较结果来输出训练数据tr_data作为样本训练数据。训练控制器210可以基于训练数据tr_data中包括的校准数据的值是否落入训练参考tr_ref中定义的参考范围内来确定训练数据tr_data是否通过训练参考tr_ref。
46.训练控制器210可以将通过训练参考的训练数据作为样本训练数据存储在训练数据存储装置220中。当训练数据tr_data没有通过训练参考tr_ref时,训练控制器210可以再次执行训练。训练控制器210可以在参考次数内重复执行训练。
47.每当存储器装置100被启动时,训练控制器210就可以执行训练。
48.训练数据存储装置220可以存储包括多条样本训练数据的训练历史信息tr_hist。
49.机器学习处理器230可以基于训练历史信息tr_hist通过机器学习来更新训练参考tr_ref。机器学习处理器230可以将多个样本训练数据输入到机器学习模型,并且基于从机器学习模型计算出的结果更新训练参考tr_ref。
50.例如,机器学习处理器230可以通过将权重不同地反映到先前的训练参考和计算结果来计算当前训练参考。机器学习模型可以是监督学习技术,并且可以包括简单回归分析模型、多元回归分析模型、广义线性模型等各种模型。
51.在存储器装置100的测试步骤中,训练控制器210可以在改变电压条件、温度条件等时执行预设次数的测试训练。训练控制器210可以生成作为接口信号sigs的测试训练的结果的测试训练数据。训练控制器210可以检查测试训练数据的信号眼裕量。训练控制器210可以将测试训练数据之中的信号眼裕量处于正常范围内的测试训练数据作为初始训练数据存储在训练数据存储装置220中。
52.训练数据存储装置220可以存储训练控制器210生成的多条测试训练数据之中的信号眼裕量处于正常范围内的测试训练数据作为初始训练数据。
53.机器学习处理器230可以基于训练数据存储装置220中存储的多条初始训练数据来设置训练参考。此时,所设置的训练参考可以用作用户步骤中的默认训练参考。
54.图3是示出根据本公开的实施例的训练数据的示图。
55.参照图3,训练数据tr_data可以包括温度数据、电压数据以及指示接口信号的定时偏移的校准数据中的至少一个。
56.校准数据可以表示接口信号之中的命令/地址总线信号延迟cs delay和ca delay、数据选通信号延迟write leveling、数据信号写入操作延迟write dq delay和数据信号读取操作延迟read dq delay。校准数据的类型不限于本实施例,并且可以进一步表示存储装置中使用的各种接口信号的延迟值。
57.温度数据可以表示存储器装置的温度、存储器控制器的温度、包括存储器控制器的系统芯片的温度、存储器装置的输入/输出接口的温度以及存储器控制器的输入/输出接口的温度中的至少一个。温度数据的种类不限于本实施例,并且可以进一步包括存储装置的内部配置的各种温度值。
58.电压数据可以表示存储器装置的电压、存储器控制器的电压、包括存储器控制器的系统芯片的电压、存储器装置的输入/输出接口的电压、存储器控制器的输入/输出接口
的电压以及对与存储器装置交换的接口信号进行采样的参考电压中的至少一个。电压数据的类型不限于本实施例,并且可以进一步表示用于对存储装置中使用的各种接口信号进行采样的参考电压。参考电压包括芯片选择参考电压(vref_cs)、命令地址参考电压(vref_ca)、读取参考电压(vref_r)和写入参考电压(vref_w)。
59.图4是示出根据本公开的实施例的用于训练数据的信号眼裕量检查的示图。
60.参照图4,信号眼的横轴可以指示时间,纵轴可以指示接口信号的幅度。在调整接口装置中使用的电压时,可以调整接口信号的横轴,因为电压可以影响接口信号的频率。在调整接口装置的温度时,可以调整接口信号的纵轴,因为温度可以影响接口装置的电阻值并且电阻值可以影响接口信号的电压电平。
61.接口信号的参数可以包括失真、灵敏度、噪声裕量和定时抖动(timing jitters)。例如,失真可以是信号眼图的最上端与接口信号的最大电压电平之间的宽度。失真可以是信号眼图的最下端与接口信号的最小电压电平之间的宽度,并且可以随着宽度越窄而越好。随着宽度越窄,信号眼图越大。灵敏度可以是通过信号眼图的斜率对时间误差的灵敏度的量度,并且可以随着斜率越陡而越好。随着斜率越陡,信号眼图越大。噪声裕量可以是信号眼的开放高度,并且可以随着高度越高而越好。定时抖动可以是波形的增和减相交的部分的量度,并且可以随着定时抖动越窄而越好。
62.在实施例中,训练控制器可以通过分析接口信号的轨迹和参数值来计算信号眼裕量。当接口信号具有处于正常范围内的信号眼裕量值时,训练控制器可以确定接口信号通过信号眼裕量检查。当接口信号具有超出正常范围的信号眼裕量值时,训练控制器可以确定接口信号没有通过信号眼裕量检查。
63.具体地,当信号眼的裕量值是在接口信号的波形在时间轴上重叠时计算的时,训练控制器可以确定相应的接口信号没有通过信号眼裕量检查。
64.图5是示出根据本公开的实施例的训练参考的示图。
65.参照图5,训练参考tr_ref可以包括校准数据中包括的接口信号的延迟值的参考范围。
66.在图5中,校准数据的参考范围可以是从最小值0到最大值300,并且时间单位可以是微秒。然而,最小值和最大值以及时间单位不限于本实施例。在训练参考tr_ref中定义的参考范围的值不限于本实施例并且可以进行各种设置。
67.训练数据中包括的校准数据可以包括命令/地址总线信号延迟cs delay和ca delay、数据选通信号延迟write leveling、数据信号写入操作延迟write dq delay和数据信号读取操作延迟read dq delay。
68.在图5中,样本训练数据可以是训练数据,其中命令/地址总线信号延迟cs delay和ca delay、数据选通信号延迟write leveling、数据信号写入操作延迟write dq delay和数据信号读取操作延迟read dq delay中的每一个落入训练参考tr_ref中定义的参考范围内。
69.图6是示出根据本公开的实施例的存储器控制器的操作的流程图。
70.参照图6,在操作s601中,存储器控制器可以执行测试训练并生成测试训练数据。例如,在存储器装置的测试步骤中,存储器控制器可以在改变电压条件、温度条件等时执行测试训练。
71.在操作s603中,存储器控制器可以检查用于测试训练数据的信号眼裕量。作为检查的结果,当测试训练数据通过信号眼裕量检查时,操作进行到操作s605,并且当测试训练数据没有通过信号眼裕量检查时,操作进行到操作s607。
72.在操作s605中,存储器控制器可以存储通过信号眼裕量检查的测试训练数据作为初始训练数据。
73.在操作s607中,存储器控制器可以确定测试训练的次数是否小于或等于预设次数。作为确定的结果,当测试训练的次数小于或等于预设次数时,操作进行到操作s601,并且当测试训练的次数超过预设次数时,操作进行到操作s609。
74.在操作s609中,存储器控制器可以基于多个所存储的初始训练数据来设置训练参考。此时,所设置的训练参考可以用作用户步骤中的默认训练参考。
75.根据实施例,存储器控制器可以基于在测试步骤中获取的初始训练数据来设置在用户步骤中使用的默认训练参考。默认训练参考可以稍后在用户步骤中更新。
76.图7是示出根据本公开的实施例的存储器控制器的操作的流程图。
77.参照图7,在操作s701中,存储器控制器可以启动存储器装置。
78.在操作s703中,当存储器装置被启动时,存储器控制器可以执行校正与存储器装置交换的接口信号的训练并生成训练数据。
79.在操作s705中,存储器控制器可以确定训练数据是否通过训练参考。作为确定的结果,当训练数据通过训练参考时,操作可以进行到操作s707,并且当训练数据没有通过训练参考时,操作可以进行到操作s703。
80.在操作s707中,存储器控制器可以存储通过训练参考的训练数据作为样本训练数据。
81.图8是示出根据本公开的实施例的存储器控制器的操作的流程图。
82.参照图8,在操作s801中,存储器控制器可以启动存储器装置。
83.在操作s803中,当存储器装置被启动时,存储器控制器可以执行校正与存储器装置交换的接口信号的训练并生成训练数据。
84.在操作s805中,存储器控制器可以确定训练数据是否通过训练参考。作为确定的结果,当训练数据通过训练参考时,操作可以进行到操作s807,并且当训练数据没有通过训练参考时,操作可以进行到操作s809。
85.在操作s807中,存储器控制器可以存储通过训练参考的训练数据作为样本训练数据。
86.在操作s809中,存储器控制器可以确定训练的次数是否超过参考次数。作为确定的结果,当训练的次数超过参考次数时,操作可以进行到操作s811,并且当训练的次数小于或等于参考次数时,操作可以进行到操作s803。
87.在操作s811中,存储器控制器可能启动存储器装置失败。
88.图9是示出根据本公开的实施例的存储器控制器的操作的流程图。
89.参照图9,在操作s901中,存储器控制器可以启动存储器装置。
90.在操作s903中,当存储器装置被启动时,存储器控制器可以基于包括多个样本训练数据的训练历史信息,通过机器学习来更新训练参考。训练历史信息可以是通过对在先前的启动操作期间获取的样本训练数据进行分组而获得的信息。
91.图10是示出根据本公开的实施例的存储器控制器的操作的流程图。
92.参照图10,在操作s1001中,存储器控制器可以启动存储器装置。
93.在操作s1003中,当存储器装置被启动时,存储器控制器可以执行校正与存储器装置交换的接口信号的训练并生成训练数据。
94.在操作s1005中,存储器控制器可以确定训练数据是否通过训练参考。作为确定的结果,当训练数据通过训练参考时,操作可以进行到操作s1007,并且当训练数据没有通过训练参考时,操作可以进行到操作s1009。
95.在操作s1007中,存储器控制器可以在基于通过训练参考的训练数据而设置的接口环境中与存储器装置通信。
96.在操作s1009中,存储器控制器可以基于多个样本训练数据来确定最佳训练数据。最佳训练数据可以是样本训练数据的中间值、中位值、平均值、代表值等。
97.在操作s1011中,存储器控制器可以在基于最佳训练数据而设置的接口环境中与存储器装置通信。
98.参考根据本公开的实施例的操作s1007至s1011,即使训练数据没有通过训练参考,存储器控制器也可以通过利用最佳训练数据来跳过训练操作而无需重复执行训练操作。因此,可以缩短存储器装置的启动时间。
99.图11是示出根据本公开的另一实施例的图1的存储器控制器的示图。
100.参照图11,存储器控制器1000连接到主机host和存储器装置。存储器控制器1000被配置为响应于来自主机host的请求而访问存储器装置。例如,存储器控制器1000被配置为控制存储器装置的写入操作、读取操作、擦除操作和后台操作。存储器控制器1000被配置为提供存储器装置与主机host之间的接口。存储器控制器1000被配置为驱动用于控制存储器装置的固件。
101.存储器控制器1000可以包括处理器1010、存储器缓冲器1020、错误校正电路(ecc)1030、主机接口1040、缓冲器控制器1050、存储器接口1060和总线1070。
102.总线1070可以被配置为提供存储器控制器1000的组件之间的通道。
103.处理器1010可以控制存储器控制器1000的全部操作并且可以执行逻辑运算。处理器1010可以通过主机接口1040与外部主机通信,并且通过存储器接口1060与存储器装置通信。另外,处理器1010可以通过缓冲器控制器1050与存储器缓冲器1020通信。处理器1010可以使用存储器缓冲器1020作为操作存储器、高速缓存存储器或缓冲存储器来控制存储装置的操作。
104.处理器1010可以执行闪存转换层(ftl)的功能。处理器1010可以通过ftl将主机提供的lba转换为pba。ftl可以接收lba,并且使用映射表将lba转换为pba。根据映射单位,闪存转换层的地址映射方法可以包括多种方法。代表性的地址映射方法包括页面映射方法、块映射方法和混合映射方法。
105.处理器1010被配置为对从主机host接收的数据进行随机化。例如,处理器1010可以使用随机化种子对从主机host接收的数据进行随机化。被随机化的数据作为待存储的数据被提供到存储器装置,并被编程到存储器单元阵列。
106.处理器1010被配置为在读取操作期间对从存储器装置接收的数据进行去随机化。例如,处理器1010可以使用去随机化种子对从存储器装置接收的数据进行去随机化。被去
随机化的数据可以被输出到主机host。
107.在实施例中,处理器1010可以通过驱动软件或固件来执行随机化和去随机化。
108.存储器缓冲器1020可以用作处理器1010的操作存储器、高速缓存存储器或缓冲存储器。存储器缓冲器1020可以存储由处理器1010运行的代码和命令。存储器缓冲器1020可以存储由处理器1010处理的数据。存储器缓冲器1020可以包括静态ram(sram)或动态ram(dram)。
109.ecc 1030可以执行错误校正。ecc 1030可以基于待通过存储器接口1060写入存储器装置的数据来执行错误校正编码(ecc编码)。可以通过存储器接口1060将被错误校正编码的数据传送到存储器装置。ecc 1030可以对通过存储器接口1060从存储器装置接收的数据执行错误校正解码(ecc解码)。例如,ecc 1030可以作为存储器接口1060的组件而被包括在存储器接口1060中。
110.主机接口1040被配置为在处理器1010的控制下与外部主机通信。主机接口1040可以被配置为使用诸如以下的各种通信标准或接口中的至少一种来执行通信:通用串行总线(usb)、串行at附件(sata)、串列scsi(sas)、高速芯片间(hsic)、小型计算机系统接口(scsi)、高速外围组件互连(pci-e)、高速非易失性存储器(nvme)、通用闪存(ufs)、安全数字(sd)、多媒体卡(mmc)、嵌入式mmc(emmc)、双列直插式存储器模块(dimm)、寄存式dimm(rdimm)和负载减小的dimm(lrdimm)。
111.缓冲器控制器1050被配置为在处理器1010的控制下控制存储器缓冲器1020。
112.存储器接口1060被配置为在处理器1010的控制下与存储器装置通信。存储器接口1060可以通过通道与存储器装置进行命令、地址和数据的通信。
113.例如,存储器控制器1000可以不包括存储器缓冲器1020和缓冲器控制器1050。
114.例如,处理器1010可以使用代码来控制存储器控制器1000的操作。处理器1010可以从存储器控制器1000内部设置的非易失性存储器装置(例如,只读存储器)中加载代码。作为另一示例,处理器1010可以通过存储器接口1060从存储器装置中加载代码。
115.例如,存储器控制器1000的总线1070可以被划分为控制总线和数据总线。数据总线可以被配置为在存储器控制器1000内传输数据,控制总线可以被配置为在存储器控制器1000内传输诸如命令和地址的控制信息。数据总线和控制总线可以彼此分开,并且可以互不干扰或互不影响。数据总线可以连接到主机接口1040、缓冲器控制器1050、ecc 1030和存储器接口1060。控制总线可以连接到主机接口1040、处理器1010、缓冲器控制器1050、存储器缓冲器1020和存储器接口1060。
116.图12是示出应用了根据本公开的实施例的存储装置的存储卡系统的框图。
117.参照图12,存储卡系统2000包括存储器控制器2100、存储器装置2200和连接器2300。
118.存储器控制器2100连接到存储器装置2200。存储器控制器2100被配置为访问存储器装置2200。例如,存储器控制器2100可以被配置为控制存储器装置2200的读取操作、写入操作、擦除操作和后台操作。存储器控制器2100被配置为提供存储器装置2200与主机host之间的接口。存储器控制器2100被配置为驱动用于控制存储器装置2200的固件。存储器控制器2100可以与参照图1描述的存储器控制器200相同地实施。
119.例如,存储器控制器2100可以包括诸如随机存取存储器(ram)、处理器、主机接口、
存储器接口和ecc的组件。
120.存储器控制器2100可以通过连接器2300与外部装置通信。存储器控制器2100可以根据特定的通信标准与外部装置(例如,主机)通信。例如,存储器控制器2100被配置为通过诸如以下的各种通信标准或接口中的至少一种与外部装置通信:通用串行总线(usb)、多媒体卡(mmc)、嵌入式mmc(emmc)、外围组件互连(pci)、高速pci(pci-e或pcie)、高级技术附件(ata)、串行ata、并行ata、小型计算机系统接口(scsi)、增强型小型磁盘接口(esdi)、电子集成驱动器(ide)、火线、通用闪存(ufs)、wi-fi、蓝牙和nvme。例如,连接器2300可以由上述各种通信标准中的至少一种定义。
121.例如,存储器装置2200可以由诸如以下的各种非易失性存储器元件配置:电可擦除可编程rom(eeprom)、nand闪速存储器、nor闪速存储器、相变ram(pram)、电阻式ram(reram)、铁电ram(fram)和自旋转移扭矩磁性ram(stt-mram)。
122.存储器控制器2100和存储器装置2200可以被集成到一个半导体装置中以配置存储卡。例如,存储器控制器2100和存储器装置2200可以被集成到一个半导体装置中以配置诸如以下的存储卡:pc卡(个人计算机存储卡国际协会(pcmcia))、紧凑型闪存卡(cf)、智能媒体卡(sm或smc)、记忆棒、多媒体卡(mmc、rs-mmc、微型mmc或emmc)、sd卡(sd、迷你sd、微型sd或sdhc)和通用闪存(ufs)。
123.图13是示出应用了根据本公开的实施例的存储装置的固态驱动器(ssd)系统的框图。
124.参照图13,ssd系统3000包括主机3100和ssd 3200。ssd 3200通过信号连接器3001与主机3100交换信号,并且通过电源连接器3002接收电力pwr。ssd 3200包括ssd控制器3210、多个闪速存储器3221至322n、辅助电源3230和缓冲存储器3240。
125.根据本公开的实施例,ssd控制器3210可以执行参照图1描述的存储器控制器200的功能。
126.ssd控制器3210可以响应于从主机3100接收的信号而控制多个闪速存储器3221至322n。例如,信号可以是基于主机3100和ssd3200之间的接口的信号。例如,信号可以是由诸如以下的通信标准或接口中的至少一种定义的信号:通用串行总线(usb)、多媒体卡(mmc)、嵌入式mmc(emmc)、外围组件互连(pci)、高速pci(pci-e或pcie)、高级技术附件(ata)、串行ata、并行ata、小型计算机系统接口(scsi)、增强型小型磁盘接口(esdi)、电子集成驱动器(ide)、火线、通用闪存(ufs)、wi-fi、蓝牙和nvme。
127.辅助电源3230通过电源连接器3002连接到主机3100。辅助电源3230可以从主机3100接收电力pwr并且可以充电。当来自主机3100的电力供应不平稳时,辅助电源3230可以向ssd 3200提供电力。例如,辅助电源3230可以位于ssd 3200中或者可以位于ssd3200外部。例如,辅助电源3230可以位于主板上并且可以向ssd 3200提供辅助电力。
128.缓冲存储器3240作为ssd 3200的缓冲存储器进行操作。例如,缓冲存储器3240可以临时存储从主机3100接收的数据或从多个闪速存储器3221至322n接收的数据,或者可以临时存储闪速存储器3221至322n的元数据(例如,映射表)。缓冲存储器3240可以包括诸如dram、sdram、ddr sdram、lpddr sdram和gram的易失性存储器,或者诸如fram、reram、stt-mram和pram的非易失性存储器。
129.图14是示出应用了根据本公开的实施例的存储装置的用户系统的框图。
130.参照图14,用户系统4000包括应用处理器4100、存储器模块4200、网络模块4300、存储模块4400和用户接口4500。
131.应用处理器4100可以驱动用户系统4000中包括的组件、操作系统(os)、用户程序等。例如,应用处理器4100可以包括控制用户系统4000中包括的组件的控制器、接口、图形引擎等。应用处理器4100可以被设置为片上系统(soc)。
132.存储器模块4200可以作为用户系统4000的主存储器、操作存储器、缓冲存储器或高速缓存存储器进行操作。存储器模块4200可以包括诸如dram、sdram、ddr sdram、ddr2sdram、ddr3sdram、lpddr sdram、lpddr2sdram和lpddr3sdram的易失性随机存取存储器,或者诸如pram、reram、mram和fram的非易失性随机存取存储器。例如,应用处理器4100和存储器模块4200可以基于堆叠封装(pop)进行封装并被设置为一个半导体封装。
133.网络模块4300可以与外部装置通信。例如,网络模块4300可以支持诸如以下的无线通信:码分多址(cdma)、全球移动通信系统(gsm)、宽带cdma(wcdma)、cdma-2000、时分多址(tdma)、长期演进、wimax、wlan、uwb、蓝牙和wi-fi。例如,网络模块4300可以被包括在应用处理器4100中。
134.存储模块4400可以存储数据。例如,存储模块4400可以存储从应用处理器4100接收的数据。可选地,存储模块4400可以将存储模块4400中存储的数据传输到应用处理器4100。例如,存储模块4400可以被实施为诸如以下的非易失性半导体存储器元件:相变ram(pram)、磁性ram(mram)、电阻式ram(rram)、nand闪存、nor闪存和三维nand闪存。例如,存储模块4400可以被设置为可移动存储装置(可移动驱动器),诸如用户系统4000的存储卡和外部驱动器。
135.例如,存储模块4400可以包括多个非易失性存储器装置,并且多个非易失性存储器装置可以与参照图1描述的存储器装置100相同地操作。存储模块4400可以与参照图1描述的存储装置50相同地操作。
136.用户接口4500可以包括用于向应用处理器4100输入数据或指令或者用于向外部装置输出数据的接口。例如,用户接口4500可以包括用户输入接口,诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、相机、麦克风、陀螺仪传感器、振动传感器和压电元件。用户接口4500可以包括用户输出接口,诸如液晶显示器(lcd)、有机发光二极管(oled)显示装置、有源矩阵oled(amoled)显示装置、led、扬声器和监控器。
137.因此,本领域技术人员可以理解,在不改变本公开的技术精神或基本特征的情况下,本公开可以以其他特定形式实施。因此,应当理解,上述实施例在所有方面都不是限制性的,而是说明性的。本公开的范围由所描述的权利要求而非详细描述来定义,并且从权利要求的含义和范围以及与其等同的概念所产生的所有变化或修改形式应被解释为被包括在本公开的范围内。此外,可以对实施例进行组合,以形成另外的实施例。
技术特征:
1.一种存储器控制器,包括:训练控制器,执行校正与存储器装置交换的接口信号的训练,生成作为所述训练的结果的训练数据,并且基于训练参考与所述训练数据的比较结果,输出所述训练数据作为样本训练数据;训练数据存储装置,存储包括多条样本训练数据的训练历史信息;以及机器学习处理器,基于所述训练历史信息,通过机器学习更新所述训练参考。2.根据权利要求1所述的存储器控制器,其中所述训练数据包括以下中的至少一项:温度数据、电压数据以及指示所述接口信号的定时偏移的校准数据。3.根据权利要求2所述的存储器控制器,其中所述温度数据包括以下中的至少一项:所述存储器装置的温度、所述存储器控制器的温度、包括所述存储器控制器的系统芯片的温度、所述存储器装置的输入/输出接口的温度以及所述存储器控制器的输入/输出接口的温度。4.根据权利要求2所述的存储器控制器,其中所述电压数据包括以下中的至少一项:所述存储器装置的电压、所述存储器控制器的电压、包括所述存储器控制器的系统芯片的电压、所述存储器装置的输入/输出接口的电压、所述存储器控制器的输入/输出接口的电压以及对与所述存储器装置交换的接口信号进行采样的参考电压。5.根据权利要求2所述的存储器控制器,其中所述校准数据包括以下中的至少一项:所述接口信号之中的命令/地址总线信号的延迟、数据选通信号的延迟、数据信号在写入操作期间的延迟以及数据信号在读取操作期间的延迟。6.根据权利要求2所述的存储器控制器,其中所述训练控制器进一步基于所述校准数据的值是否落入所述训练参考中定义的参考范围内来确定所述训练数据是否通过所述训练参考。7.根据权利要求6所述的存储器控制器,其中所述训练控制器进一步将通过所述训练参考的所述训练数据存储在所述训练数据存储装置中作为所述样本训练数据。8.根据权利要求6所述的存储器控制器,其中所述训练控制器进一步在所述训练数据没有通过所述训练参考时再次执行所述训练。9.根据权利要求1所述的存储器控制器,其中所述机器学习处理器基于通过将所述多条样本训练数据输入到机器学习模型而从所述机器学习模型计算出的结果来更新所述训练参考。10.根据权利要求1所述的存储器控制器,其中所述训练控制器进一步:执行预设次数的测试训练,生成作为所述测试训练的结果的测试训练数据,以及检查所述测试训练数据的信号眼裕量。11.根据权利要求10所述的存储器控制器,其中所述训练数据存储装置进一步存储所述训练控制器生成的多条测试训练数据之中的、所述信号眼裕量处于正常范围内的测试训练数据作为初始训练数据。12.根据权利要求11所述的存储器控制器,其中所述机器学习处理器进一步基于所述训练数据存储装置中存储的多条初始训练数据来设置所述训练参考。
13.根据权利要求1所述的存储器控制器,其中每当所述存储器装置被启动时,所述训练控制器就执行所述训练。14.根据权利要求1所述的存储器控制器,其中所述接口信号包括用于随机存取存储器即ram的接口信号以及用于非易失性存储器即nvm的接口信号中的至少一种。15.一种操作存储器控制器的方法,所述方法包括:执行校正与存储器装置交换的接口信号的训练,基于作为所述训练的结果的训练数据与训练参考的比较结果,存储所述训练数据作为样本训练数据;并且基于包括多条样本训练数据的训练历史信息,通过机器学习更新所述训练参考。16.根据权利要求15所述的方法,其中所述训练数据包括以下中的至少一项:温度数据、电压数据以及指示所述接口信号的定时偏移的校准数据。17.根据权利要求16所述的方法,其中存储所述训练数据包括当所述校准数据的值落入所述训练参考中定义的参考范围内时,存储所述训练数据作为所述样本训练数据。18.根据权利要求15所述的方法,其中更新所述训练参考包括将所述多个样本训练数据输入到机器学习模型,并基于从所述机器学习模型计算出的结果来更新所述训练参考。19.根据权利要求15所述的方法,进一步包括:执行预设次数的测试训练;生成作为所述测试训练的结果的多条测试训练数据;存储所述多条测试训练数据之中信号眼裕量处于正常范围内的测试训练数据;并且基于多条初始训练数据设置所述训练参考。20.根据权利要求15所述的方法,其中所述接口信号包括用于随机存取存储器即ram的接口信号以及用于非易失性存储器即nvm的接口信号中的至少一种。21.一种装置的操作方法,所述方法包括:校准待与外部装置交换的信号;当校准信号的至少一个定时偏移落入阈值范围内时,累积表示所述至少一个定时偏移的信息;并且基于所累积的信息更新所述阈值范围。
技术总结
本技术涉及一种电子装置。根据本技术,一种存储器控制器可以包括训练控制器、训练数据存储装置和机器学习处理器。训练控制器可以执行校正与存储器装置交换的接口信号的训练,生成作为训练的结果的训练数据,以及基于训练参考和训练数据的比较结果输出训练数据作为样本训练数据。训练数据存储装置可以存储包括多条样本训练数据的训练历史信息。机器学习处理器可以基于训练历史信息,通过机器学习来更新训练参考。训练参考。训练参考。
技术研发人员:丁南爀 崔光浩 崔文赫 河泰雄 黃勇完
受保护的技术使用者:爱思开海力士有限公司
技术研发日:2022.10.10
技术公布日:2023/7/13
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
