
一种eeprom数据管理方法、装置、设备及存储介质
技术领域
1.本发明涉及计算机技术领域,具体涉及一种
eeprom
数据管理方法
、
装置
、
设备及存储介质
。
背景技术:2.eeprom(electrically erasable programmable read only memory
,带电可擦可编程只读存储器
)
广泛应用于对数据存储安全性及可靠性要求高的应用场合,如门禁考勤系统,测量和医疗仪表,非接触式智能卡,税控收款机等等
。
随着编程次数的增加,
eeprom
存在损坏的概率,同时存储的数据也会因震荡
、
噪声
、
遇磁等发生错误
。
3.在服务器上
eeprom
用来存储
mac(mediaaccesscontrol
,媒体访问控制
)
地址
、fru(field replace unit
,现场可更换单元
)
信息
、
串口切换信息
、
登录验证秘钥
、
账户密码以及其它用户可以定制化的信息,此部分信息关系到服务器系统正常运行以及用户服务正常提供,若是数据出现异常容易导致服务器宕机,用户无法登陆管理,以及设备运行异常报警等状态,从而对数据可靠性要求很高
。
因此,在服务器应用上需要
eeprom
在出现故障或者数据跳变后能自动对数据进行纠错的功能,从而保证服务器运行稳定可靠
。
4.相关技术通过对
eeprom
存储的数据进行冗余编码,保证数据自身拥有纠错能力
。
但是相关技术都是对数据进行编码后将纠错码与数据一同存储到
eeprom
,
bmc(board management controller
,基板控制器
)
中的读写软件在读取数据时重新计算一遍纠错码,如果纠错码与
eeprom
中保存的纠错码一致则将数据读到
bmc
缓存,当
host(
服务器主机
)
系统向
bmc
请求数据时,再将
bmc
缓存中的数据转发给
host。
此方式因为需要额外空间存储纠错码会导致
eeprom
有效数据容量变低,这使得本身容量较低的
eeprom
存储空间利用率大打折扣,另外数据与纠错码一起存储需要对数据编码,存储编码后的数据,需要读写软件必须配套使用解码软件解码后才能拿到可用数据
。
从而存在
eeprom
存储空间占用过多
、
设备不够精简
、
系统运行不够稳定的问题
。
技术实现要素:5.有鉴于此,本发明提供了一种
eeprom
数据管理方法
、
装置
、
设备及存储介质,以解决相关技术管理
eeprom
数据时存在存储空间占用过多
、
设备不够精简
、
系统运行不够稳定的问题
。
6.第一方面,本发明提供了一种
eeprom
数据管理方法,方法应用于
bmc
,包括:通过读写模块发送读取消息到预设的纠错模块;通过纠错模块接收读取消息,并响应于读取消息分别从
eeprom
和目标闪存中获取目标数据和纠错码;通过纠错模块利用纠错码对目标数据的完整性进行验证;当验证通过时,通过纠错模块反馈数据正常信息到读写模块;通过读写模块接收数据正常信息,并响应于数据正常信息从
eeprom
中读取目标数据到
bmc
缓存
。
7.根据上述技术手段,本实施例通过单独的目标闪存保存纠错码,并将读写模块和纠错模块独立部署
。
当读写模块需要读取数据到
bmc
缓存时,纠错模块会首先到
eeprom
中查
看数据,并利用从目标闪存获取的纠错码对数据的完整性进行验证,当验证通过时才告知纠错模块
eeprom
中的目标数据正常,可以进行读取,从而读写模块再从
eeprom
中将目标数据读取到
bmc
缓存,以供服务器主机调用
。
一方面,纠错码不再与目标数据同时保存,减少了
eeprom
存储空间的占用,另一方面,纠错码与目标数据不再需要编码保存,为读写模块去除了编码解码软件,降低了读写模块的复杂度,提升设备精简程度
。
另外,纠错模块与读写模块分为两个独立的进程各自运行,读写不与纠错耦合,提高了系统运行的稳定性
。
8.在一种可选地实施方式中,通过读写模块发送读取消息到预设的纠错模块包括:当
bmc
上电启动时,通过读写模块检测
eeprom
是否初始化;当
eeprom
未初始化时,通过读写模块将默认配置数据写入
eeprom
,并标记
eeprom
已初始化;当
eeprom
已初始化时,通过读写模块发送已初始化消息到纠错模块,其中已初始化消息作为读取消息
。
9.在一种可选地实施方式中,响应于读取消息分别从
eeprom
和目标闪存中获取目标数据和纠错码,包括:当
bmc
上电启动时,通过纠错模块检测目标闪存的纠错码区是否可用,其中当目标闪存中存储的纠错码能够纠错目标数据时纠错码区被标记为可用;当纠错码区可用时,通过纠错模块判断是否已接收到已初始化消息;当接收到已初始化消息时,通过纠错模块分别从
eeprom
和目标闪存中获取目标数据和纠错码
。
10.在一种可选地实施方式中,方法还包括:当纠错码区不可用时,通过纠错模块等待已初始化消息;当通过纠错模块接收到已初始化消息时,响应于已初始化消息从
eeprom
中获取目标数据,并计算目标数据对应的纠错码;通过纠错模块将纠错码写入目标闪存,并标记目标闪存的纠错码区为可用
。
11.根据上述技术手段,本实施例提供的纠错模块和读写模块都在
bmc
上电启动时自动运行,各自执行任务,并在执行任务的过程中互相配合
。
首先在
bmc
上电时,读写模块会检测
eeprom
是否初始化,如果初始化则告知自身已经准备就绪,纠错模块可以随时开始执行纠错功能,如果没有初始化则读写模块对
eeprom
进行初始化
。
在同一时间,
bmc
一上电纠错模块会立即启动并检测目标闪存中的纠错码是否可用,如果可用则等到读写模块发送的已初始化消息到来立刻开始进行数据的完整性验证,如果不可用则等待初始化消息到来,从而确认
eeprom
已经有数据,重新计算纠错码保存到目标闪存,并默认纠错码是正确的,将其标记为可用,进而重新执行数据完整性验证的流程
。
通过这一方式,读写模块与纠错模块是并行运行的两个进程,只需在需要对方数据的条件下进行等待,与相关技术通过读写模块读取数据之后再进行纠错的方案相比,不仅减少了任务执行时间,而且在数据和纠错码发生错误的情况下也不需要读取流程重复多遍执行,纠错模块会在读写模块读取数据之前将纠错码和数据整理准确,保证数据的完整性
。
12.在一种可选地实施方式中,方法还包括:当验证不通过时,通过纠错模块利用纠错码对目标数据进行纠错;当纠错失败时,通过纠错模块标记目标闪存的纠错码区为不可用;通过纠错模块反馈重新初始化信息到读写模块;通过读写模块接收重新初始化信息,并响应于重新初始化信息对
eeprom
重新初始化;当纠错成功时,通过纠错模块将纠错后的目标数据写入
eeprom
,以更新
eeprom
中的目标数据;通过纠错模块反馈重新读取信息到读写模块;通过读写模块接收重新读取信息,并响应于重新读取信息重新执行发送读取消息到预设的纠错模块的步骤
。
13.在一种可选地实施方式中,方法还包括:通过读写模块接收服务器主机反馈的第
二目标数据;通过读写模块将第二目标数据写入
eeprom
;在第二目标数据写入
eeprom
时,通过纠错模块检测第二目标数据和目标数据是否相同;若数据不相同,则通过纠错模块计算第二目标数据的第二纠错码;通过纠错模块将第二纠错码写入目标闪存,以更新目标闪存中的纠错码
。
14.在一种可选地实施方式中,通过纠错模块利用纠错码对目标数据的完整性进行验证,包括:利用
crc
纠错码验证目标数据的各个位是否出现错误;当目标数据的各个位均验证正确时,判定目标数据的完整性验证通过;当目标数据的至少一位验证错误时,判定目标数据的完整性验证不通过
。
15.第二方面,本发明提供了一种
eeprom
数据管理装置,装置应用于
bmc
,包括:纠错通知模块,用于通过读写模块发送读取消息到预设的纠错模块;纠错数据获取模块,用于通过纠错模块接收读取消息,并响应于读取消息分别从
eeprom
和目标闪存中获取目标数据和纠错码;验证模块,用于通过纠错模块利用纠错码对目标数据的完整性进行验证;正常反馈模块,用于当验证通过时,通过纠错模块反馈数据正常信息到读写模块;数据读取模块,用于通过读写模块接收数据正常信息,并响应于数据正常信息从
eeprom
中读取目标数据到
bmc
缓存
。
16.第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的方法
。
17.第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的方法
。
附图说明
18.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图
。
19.图1是根据本发明实施例的一种
eeprom
数据管理方法的流程示意图;
20.图2是根据本发明实施例的服务器系统的结构示意图;
21.图3是根据本发明实施例的一种
crc
校验示意图;
22.图4是根据本发明实施例的一种
eeprom
数据管理方法的另一个流程示意图;
23.图5是根据本发明实施例的一种
eeprom
数据管理装置的结构示意图;
24.图6是本发明实施例的计算机设备的硬件结构示意图
。
具体实施方式
25.为使本发明实施例的目的
、
技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚
、
完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例
。
基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围
。
26.根据本发明实施例,提供了一种
eeprom
数据管理方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤
。
27.在本实施例中提供了一种
eeprom
数据管理方法,可用于上述的计算机设备,图1是根据本发明实施例的一种
eeprom
数据管理方法的流程图,如图1所示,该流程包括如下步骤:
28.步骤
s101
,通过读写模块发送读取消息到预设的纠错模块
。
29.步骤
s102
,通过纠错模块接收读取消息,并响应于读取消息分别从
eeprom
和目标闪存中获取目标数据和纠错码
。
30.步骤
s103
,通过纠错模块利用纠错码对目标数据的完整性进行验证
。
31.步骤
s104
,当验证通过时,通过纠错模块反馈数据正常信息到读写模块
。
32.步骤
s105
,通过读写模块接收数据正常信息,并响应于数据正常信息从
eeprom
中读取目标数据到
bmc
缓存
。
33.具体地,
bmc
是服务器中用于记录服务器信息
、
对服务器进行状态监控
、
记录服务器日志的专用控制器
。
在该控制器中,本实施例分别单独部署了读写模块和纠错模块两种软件模块,其中读写模块与相关技术中的读写软件类似,都是用于从
eeprom
读取数据并将数据保存到
bmc
缓存的软件程序,当
bmc
通过读写模块收到
host(
服务器主机
)
的读取数据请求时,将
bmc
缓存中的数据转发给服务器主机
。
而纠错模块继承了数据的完整性验证
、
纠错
、
纠错码生成的能力,使读写模块只关注数据的读写
。
另外,本技术利用服务器中
flash
存储的空闲空间
(
目标闪存
)
来保存纠错码,
flash
存储是一种电子式可清除程序化只读存储器的形式,允许在操作中被多次擦或写的存储器,用来存储系统软件以及文件系统镜像等
。
如图2所示,纠错模块可以访问目标闪存进行数据的存储和读取,也可以访问到
eeprom
存放的数据,并且也能够检测系统软件对
eeprom
的读写操作
。
34.在本发明实施例中,纠错模块与读写模块两个进程互相通信,
bmc
上电后,当
bmc
需要从
eeprom
读取数据时,先通过读写模块发送读取消息到纠错模块,通过纠错模块响应该读取消息,分别从
eeprom
和目标闪存中获取目标数据和纠错码,纠错码包括但不限于汉明码
、
奇偶校验码
、bcd
码
。
之后通过纠错模块利用纠错码对目标数据的完整性进行验证;在数据验证通过时及时反馈数据正常信息给读写模块,当验证不通过时利用纠错码对数据纠错,从而验证通过
。
之后,根据数据正常信息,通过读写模块从
eeprom
中读取目标数据并将目标数据保存到
bmc
缓存
。
35.通过这一方案,纠错码不再与目标数据同时保存,减少了
eeprom
存储空间的占用,另一方面,纠错码与目标数据也不再需要编码保存,为读写模块去除了编码解码软件,降低了读写模块的复杂度,提升设备精简程度
。
另外,纠错模块与读写模块分为两个独立的进程各自运行,读写进程不与纠错进程耦合,提高了系统运行的稳定性
。
36.在一些可选地实施方式中,上述步骤
s101
包括:
37.步骤
a1
,当
bmc
上电启动时,通过读写模块检测
eeprom
是否初始化
。
38.步骤
a2
,当
eeprom
未初始化时,通过读写模块将默认配置数据写入
eeprom
,并标记
eeprom
已初始化
。
39.步骤
a3
,当
eeprom
已初始化时,通过读写模块发送已初始化消息到纠错模块,其中已初始化消息作为读取消息
。
40.在一些可选地实施方式中,上述步骤
s102
包括:
41.步骤
a4
,当
bmc
上电启动时,通过纠错模块检测目标闪存的纠错码区是否可用,其中当目标闪存中存储的纠错码能够纠错目标数据时纠错码区被标记为可用;
42.步骤
a5
,当纠错码区可用时,通过纠错模块判断是否已接收到已初始化消息;
43.步骤
a6
,当接收到已初始化消息时,通过纠错模块分别从
eeprom
和目标闪存中获取目标数据和纠错码
。
44.在本实施例中,一种
eeprom
数据管理方法还包括:
45.步骤
a7
,当纠错码区不可用时,通过纠错模块等待已初始化消息;
46.步骤
a8
,当通过纠错模块接收到已初始化消息时,响应于已初始化消息从
eeprom
中获取目标数据,并计算目标数据对应的纠错码;
47.步骤
a9
,通过纠错模块将纠错码写入目标闪存,并标记目标闪存的纠错码区为可用
。
48.具体地,为了进一步提高系统稳定性,和数据读写效率
。
本实施例提供的纠错模块和读写模块在运行上不区别先后顺序,都在
bmc
上电启动时自动运行,纠错模块和读写模块各自执行自身的任务,并在执行任务的过程中互相配合
。
49.具体地,在
bmc
上电时,读写模块会首先检测
eeprom
是否初始化,如果
eeprom
已经初始化,表征
eeprom
中存在数据,从而读写模块通过已初始化消息告知纠错模块自身已经准备就绪,随时可以进行读取数据,请纠错模块随时开始执行纠错功能
。
如果读写模块检测到
eeprom
没有初始化,表征
eeprom
中还不存在目标数据,则读写模块对
eeprom
进行初始化,通过读写模块将默认配置数据写入
eeprom
,并标记
eeprom
已初始化,保证
eeprom
中存在数据才让纠错模块进行数据验证,避免逻辑出错,提高系统稳定性
。
50.在同一段时间,
bmc
上电启动会立即启动纠错模块,通过纠错模块检测目标闪存中的纠错码是否可用,在本实施例中,目标闪存中存储的纠错码是否能够对目标数据进行纠错是纠错码区被标记为可用和不可用的标准
。
在本实施例中,纠错模块每次利用目标数据计算完纠错码时,默认纠错码是可用的,无需进行验证,纠错码实际是否可用在后续实际纠错过程中进行同步验证即可,以减少重读验证的工作
。
基于此,如果纠错码区可用,纠错模块则等待已初始化消息到来,一旦接收到读写模块发送的已初始化消息,纠错模块认为
eeprom
存在数据,可以随时开始数据完整性验证的任务,从而立刻开始进行数据的完整性验证,分别从
eeprom
和目标闪存中获取目标数据和纠错码,提高数据读取效率
。
51.在本实施例中,如果纠错码区被标记了不可用,表示纠错码不能正确纠错,也需通过纠错模块等待初始化消息到来,从而确认
eeprom
已经存在数据
。
当纠错模块确认
eeprom
已经存在数据后,重新从
eeprom
获取目标数据,并利用目标数据计算纠错码保存到目标闪存,此时默认纠错码是正确的,将纠错码区标记为可用,进而重新执行数据完整性验证的流程,保证数据和纠错码的准确率
。
52.通过本发明实施例提供的方案,读写模块与纠错模块是并行运行的两个进程,只需在需要对方数据的条件下进行等待,与相关技术利用读写模块读取数据之后再进行纠错的方案相比,不仅减少了任务执行时间,而且在目标数据或纠错码发生错误的情况下也不
需要读取模块重复多遍读取流程,本实施例提供的纠错模块会在读写模块读取数据之前将纠错码和数据整理准确,保证数据的完整性
。
53.在一些可选地实施方式中,本发明实施例提供的一种
eeprom
数据管理方法还包括如下步骤:
54.步骤
b1
,当验证不通过时,通过纠错模块利用纠错码对目标数据进行纠错
。
55.步骤
b2
,当纠错失败时,通过纠错模块标记目标闪存的纠错码区为不可用
。
56.步骤
b3
,通过纠错模块反馈重新初始化信息到读写模块
。
57.步骤
b4
,通过读写模块接收重新初始化信息
。
58.步骤
b5
,通过读写模块响应于重新初始化信息对
eeprom
重新初始化
。
59.具体地,在本发明实施例中,当纠错模块对
eeprom
中的数据验证不通过时,判定目标数据存在问题,从而利用纠错码对目标数据进行纠错
。
其中利用纠错码对目标数据进行纠错的具体步骤为现有技术,本实施例不再赘述
。
之后,当纠错失败时表明当前纠错码存在问题,纠错码不能对数据进行正确纠错,故本发明实施例通过纠错模块标记目标闪存的纠错码区为不可用,与前述实施例中纠错模块启动时发现纠错码不可用时对纠错码进行更新的逻辑形成闭环,提高纠错码的准确率
。
同时,通过纠错模块反馈重新初始化信息到读写模块,令读写模块对
eeprom
重新进行初始化,更新
eeprom
中的目标数据并更新目标闪存中的纠错码,提高目标数据和纠错码的可靠性
。
60.步骤
b6
,当纠错成功时,通过纠错模块将纠错后的目标数据写入
eeprom
,以更新
eeprom
中的目标数据
。
61.步骤
b7
,通过纠错模块反馈重新读取信息到读写模块
。
62.步骤
b8
,通过读写模块接收重新读取信息
。
63.步骤
b9
,通过读写模块响应于重新读取信息重新执行发送读取消息到预设的纠错模块的步骤
。
64.具体地,当纠错成功时,表示纠错码没问题,从而纠错模块将纠错后的目标数据写入
eeprom
,以更新
eeprom
中的目标数据,提高目标数据的准确率,同时反馈重新读取信息到读写模块,令读写模块重新从步骤
s101
开始执行读取数据的流程,提高了目标数据的准确率,保证读取正确的数据到
bmc
缓存
。
65.在一些可选地实施方式中,本发明实施例提供的一种
eeprom
数据管理方法还包括如下步骤:
66.步骤
c1
,通过读写模块接收服务器主机反馈的第二目标数据;
67.步骤
c2
,通过读写模块将第二目标数据写入
eeprom
;
68.步骤
c3
,在第二目标数据写入
eeprom
时,通过纠错模块检测第二目标数据和目标数据是否相同;
69.步骤
c4
,若数据不相同,则通过纠错模块计算第二目标数据的第二纠错码;
70.步骤
c5
,通过纠错模块将第二纠错码写入目标闪存,以更新目标闪存中的纠错码
。
71.具体地,在实际应用时,服务器主机不仅会读取
eeprom
的数据,还会修改目标数据并将修改后的数据回存到
eeprom
,基于此,本实施例通过读写模块接收服务器主机修改的第二目标数据并将该数据写入
eeprom
后,还通过纠错模块去
eeprom
检测第二目标数据和修改前的目标数据是否相同;如果数据不相同,则通过纠错模块计算新的第二纠错码,然后更
新目标内存中的纠错码,从而进一步保证数据和纠错码的准确性
。
72.在一个具体地实施例中,纠错码采用
crc
纠错码,
crc
纠错码是由信息码n位和校验码k位构成的一种差错校验码,k位校验位拼接在n位数据位后面,
n+k
为循环冗余校验码的字长,又称这个校验码为
(n+k,n)
码
。n
位信息位可以表示成为一个报文多项式
m(x)
,最高幂次是
x
n-1
,约定的生成多项式
g(x)
是一个
k+1
位的二进制数,最高幂次是
xk。
将
m(x)
乘以
xk,即左移k位后除以
g(x)
,得到的k位余数就是校验位,这里的除法运算是模2除法,即当部分余数首位是1时商取1,反之商取0,然后每一位的减法运算是按位减,不产生借位
。
73.crc
纠错码存储或传送后,在接收方进行校验过程,以判断数据是否有错,若有错则进行纠错
。
一个
crc
码一定能被生成多项式整除,所以在接收方对码字用同样的生成多项式相除,如果余数为0,则码字没有错误;若余数不为0,则说明某位出错,不同的出错位置余数不同,出错位置和余数的对应关系是确定的,通过余数结果即可判断出数据的哪一位出错,从而找到出错位将数据修改即可,起到纠正数据错误的效果,显著提高了纠正数据的准确率
。
74.例如:假设拥有信息位
1100
和生成多项式
g(x)
=
1011
,通过模2除生成校验码
1100010
,参考图3,即不同出错位与余数的对应关系
。
原数据为
1100
,
g(x)
=
1011。
根据算法定义4位原数据加3位纠错码组成7位校验数据,首先原数据末尾补
000
得到
1100000
,用
1100000
对
g(x)
进行模二除得到余数为
010(
纠错码
)
,则原数据加纠错码组成的正确校验数据为
1100010。
若校验数据为
1100010
,通过校验计算
1100010
模二除
g(x)
结果为
000
,则表示校验数据正确
。
若校验数据为
1100011
,第七位出错,则
1100011
模2除
g(x)
结果为
001
,同理每一位数据出错得到的余数结果如图3所示
。
因此可根据校验余数结果是否为
000
判断数据知否正确,若结果不为
000
便可根据余数结果判断出来哪一位出错了找到出错位将数据修改即可得到起到纠正数据错误的效果
。
75.在一个具体地实施例中,本发明实施例提供的
eeprom
数据管理方法如下:
76.如图4所示,系统上电后读写模块自动运行首先检测
eeprom
是否初始化,若未初始化状态
(
新机第一次启动
、
系统恢复出厂设置或数据错误等情况
eeprom
会被标记为未初始化
)
,此时读写模块加载代码中默认配置数据写入
eeprom
,并设置
eeprom
为已初始化
。
若
eeprom
已初始化则准备读取数据到
bmc
缓存供服务器主机
host
使用,同时读写模块预留的错误处理接口接收纠错模块发送的消息,从而标记数据为正常
、
需要重读和需要重新初始化三个状态
。
读写模块接收服务器主机的信息负责向服务器主机传递数据或者接收服务器主机修改后的数据进行回写
eeprom
,若数据发生修改则读写模块通知纠错模块更新纠错码
。
77.纠错模块提供对
eeprom
数据的纠错功能,系统上电后纠错模块自动运行,首先检测
flash
中纠错码区是否可用,若纠错码区不可用则判断
eeprom
数据是否已初始化,若
eeprom
未初始化则等待
eeprom
初始化完成,若
eeprom
数据已初始化则执行纠错算法,计算数据的纠错码,之后将纠错码写入
flash
的纠错码区并标记纠错码区为可用,若纠错码区可用则使用纠错码校验
eeprom
数据是否完整
。
若校验失败则启动纠错,纠错成功则更新
eeprom
数据为正确数据并发信息给读写模块使其标记数据需重读,若纠错失败则发信息给读写模块使其标记数据为需初始化,同时纠错模块将
flash
纠错区纠错码标记为不可用
。
若校验通过则发信息给读写模块使其标记数据为正常
。
此外,纠错模块还等待读写模块修改
eeprom
中的数据,检测到
eeprom
数据修改时重新计算纠错码并更新纠错码区数据
。
78.在本实施例中还提供了一种
eeprom
数据管理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述
。
如以下所使用的,术语“模块”可以实现预定功能的软件和
/
或硬件的组合
。
尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的
。
79.本实施例提供一种
eeprom
数据管理装置,如图5所示,包括:
80.纠错通知模块
401
,用于通过读写模块发送读取消息到预设的纠错模块;详细内容参见上述方法实施例中步骤
s101
的相关描述,在此不再进行赘述
。
81.纠错数据获取模块
402
,用于通过纠错模块接收读取消息,并响应于读取消息分别从
eeprom
和目标闪存中获取目标数据和纠错码;详细内容参见上述方法实施例中步骤
s102
的相关描述,在此不再进行赘述
。
82.验证模块
403
,用于通过纠错模块利用纠错码对目标数据的完整性进行验证;详细内容参见上述方法实施例中步骤
s103
的相关描述,在此不再进行赘述
。
83.正常反馈模块
404
,用于当验证通过时,通过纠错模块反馈数据正常信息到读写模块;详细内容参见上述方法实施例中步骤
s104
的相关描述,在此不再进行赘述
。
84.数据读取模块
405
,用于通过读写模块接收数据正常信息,并响应于数据正常信息从
eeprom
中读取目标数据到
bmc
缓存
。
详细内容参见上述方法实施例中步骤
s105
的相关描述,在此不再进行赘述
。
85.上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述
。
86.本实施例中的一种
eeprom
数据管理装置是以功能单元的形式来呈现,这里的单元是指
asic(application specific integrated circuit
,专用集成电路
)
电路,执行一个或多个软件或固定程序的处理器和存储器,和
/
或其他可以提供上述功能的器件
。
87.本发明实施例还提供一种计算机设备,具有上述图5所示的
eeprom
数据管理装置
。
88.请参阅图6,图6是本发明可选实施例提供的一种计算机设备的结构示意图,如图6所示,该计算机设备包括:一个或多个处理器
10、
存储器
20
,以及用于连接各部件的接口,包括高速接口和低速接口
。
各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装
。
处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入
/
输出装置
(
诸如,耦合至接口的显示设备
)
上显示
gui
的图形信息的指令
。
在一些可选的实施方式中,若需要,可以将多个处理器和
/
或多条总线与多个存储器和多个存储器一起使用
。
同样,可以连接多个计算机设备,各个设备提供部分必要的操作
(
例如,作为服务器阵列
、
一组刀片式服务器
、
或者多处理器系统
)。
图6中以一个处理器
10
为例
。
89.处理器
10
可以是中央处理器,网络处理器或其组合
。
其中,处理器
10
还可以进一步包括硬件芯片
。
上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合
。
上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合
。
90.其中,存储器
20
存储有可由至少一个处理器
10
执行的指令,以使至少一个处理器
10
执行实现上述实施例示出的方法
。
91.存储器
20
可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统
、
至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等
。
此外,存储器
20
可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件
、
闪存器件
、
或其他非瞬时固态存储器件
。
在一些可选的实施方式中,存储器
20
可选包括相对于处理器
10
远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备
。
上述网络的实例包括但不限于互联网
、
企业内部网
、
局域网
、
移动通信网及其组合
。
92.存储器
20
可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器
20
还可以包括上述种类的存储器的组合
。
93.该计算机设备还包括通信接口
30
,用于该计算机设备与其他设备或通信网络通信
。
94.本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件
、
固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机
、
专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理
。
其中,存储介质可为磁碟
、
光盘
、
只读存储记忆体
、
随机存储记忆体
、
快闪存储器
、
硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合
。
可以理解,计算机
、
处理器
、
微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机
、
处理器或硬件访问且执行时,实现上述实施例示出的方法
。
95.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内
。