CN101377749B - 存储器数据校验方法、装置、可编程逻辑器件及系统 - Google Patents
存储器数据校验方法、装置、可编程逻辑器件及系统 Download PDFInfo
- Publication number
- CN101377749B CN101377749B CN2007101457419A CN200710145741A CN101377749B CN 101377749 B CN101377749 B CN 101377749B CN 2007101457419 A CN2007101457419 A CN 2007101457419A CN 200710145741 A CN200710145741 A CN 200710145741A CN 101377749 B CN101377749 B CN 101377749B
- Authority
- CN
- China
- Prior art keywords
- verification
- address
- read
- register
- storer
- 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
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了存储器数据校验的方法、装置、可编程逻辑器件及系统,存储器数据校验的方法包括:接收校验命令,该命令包含起始地址、结束地址、启动标识,并将所述校验命令存储,启动标识用于标识开始数据校验的时间;根据校验命令中的起始地址、结束地址及启动标识对对存储器中的数据读取并校验;校验完成后将校验结果保存;在校验过程中收到控制器发送的读或写存储器的命令,则暂停对存储器数据读取、校验,并存储当前读取、校验的存储器地址,将读或写存储器的命令发送给存储器;根据存储的当前读取、校验的存储器地址恢复对存储器数据读取、校验。本发明可以在电路板需要对存储器中的数据检测时,及时通过数据校验装置对存储器进行校验。
Description
技术领域
本发明涉及计算机领域,尤其涉及存储器数据校验方法、装置、可编程逻辑器件及系统。
背景技术
在嵌入式系统的电路板上通常都有一片CPU(控制器),通过软件的执行来完成业务处理、设备控制、系统管理等功能。为了保证电路板上电的时候能自动运行、在电路板掉电的时候保存的软件代码和重要数据内容不会丢失,软件代码一般保存在非易失性的存储器中,例如EPROM(ErasableProgrammable Read Only Memory可擦除、可编程的只读存储器)、EEPROM(Electrically Erasable Programmable Read Only Memory电可擦除、可编程的只读存储器)等。
电路板上的存储器一般分为两个部分,第一个部分保存的是CPU上电后就开始执行的指令,可以用一片存储器来保存,类似于个人计算机主板上的BIOS,一般不需要更改其中的内容;第二个部分保存的是一些重要的数据和应用程序,一般可以根据需要进行更新,而且电路板从第一个部分启动后会接着跳转到第二个部分继续执行,并从中读取程序运行所需的数据。如果第二个部分中保存的程序或数据发生差错,CPU会因为指令出错而死机,或者因为数据出错而导致程序执行异常,所以必须采取某种措施来保证数据的正确性,当第二个部分中的数据出错时能够检测出来并做出合适的处理。
目前主要采用的手段是将存储器校验出厂前通过专门的测试装备进行检测。离线校验的方法为读取存储器中存储的在写入代码或数据的时候同时写入的校验码,先通过校验码确认存储器中存储的数据无误之后再使用它们。但是存储器在电路板工作的过程中可能会由于温度应力、电应力、器件老化等原因造成某些存储单元失效,但是无法即时校验出来,不能够对指定的存储器地址空间进行现场运行校验;容易造成程序运行出错,而且难以定位原因;依然会导致当电路板启动或正在运行的过程中,CPU执行指令时因为指令出错而死机,或者因为数据出错而导致程序执行异常。因此现有技术无法实现在电路板需要对存储器中的数据检测时,能够自主的进行检测。
发明内容
本发明提供存储器数据校验的方法、存储器数据校验装置、存储器数据校验系统、可编程逻辑器件及包含该可编程逻辑器件的存储器数据校验系统。
本发明提供存储器数据校验的方法,该方法包括:
接收校验命令,该命令包含起始地址、结束地址、启动标识,并将所述校验命令存储,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;根据校验命令中的起始地址、结束地址及启动标识对对存储器中的数据读取并校验;校验完成后将校验结果保存;在校验过程中收到控制器发送的读或写存储器的命令,则暂停对存储器数据读取、校验,并存储当前读取、校验的存储器地址,将所述读或写存储器的命令发送给存储器;根据存储的当前读取、校验的存储器地址恢复对存储器数据读取、校验。
本发明提供一种存储器数据校验装置,该装置包括:
读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,校验完成后将校验结果保存在检测结果寄存器中,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;起始地址寄存器,用于存储校验命令中的开始地址;结束地址寄存器,用于存储校验命令中的结束地址;命令寄存器,用于存储校验命令中的启动标识;检测结果寄存器,用于存储校验结果;当前校验地址寄存器,用于存储检验过程中的存储器的地址;读写控制单元在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储在当前校验地址寄存器中,将所述读或写存储器的命令发送给存储器后,从校验地址寄存器获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存在检测结果寄存器中。
本发明提供存储器数据校验系统,其特征在于,系统包括:
控制器,用于向数据校验装置发送校验命令,和发送读或写存储器的命令;数据校验装置,用于接收校验命令,该命令包含起始地址、结束地址、启动标识,并将所述校验命令存储,根据校验命令中的起始地址、结束地址及启动标识对对存储器中的数据读取并校验;校验完成后将校验结果保存,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;存储器,用于保存控制器运行时需要的数据,在接收到控制器发送的读或写存储器的命令时,执行相应的操作;所述数据校验装置在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储,将所述读或写存储器的命令发送给存储器后,获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存。
本发明提供可编程逻辑器件,该可编程逻辑器件包括:
读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,校验完成后将校验结果保存在检测结果寄存器中,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;起始地址寄存器,用于存储校验命令中的开始地址;结束地址寄存器,用于存储校验命令中的结束地址;命令寄存器,用于存储校验命令中的启动标识;检测结果寄存器,用于存储校验结果;当前校验地址寄存器,用于存储检验过程中的存储器的地址;读写控制单元在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储在当前校验地址寄存器中,将所述读或写存储器的命令发送给存储器后,从校验地址寄存器获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存在检测结果寄存器中。
本发明提供存储器数据校验系统,该系统包括:
控制器,用于向数据校验装置发送校验命令,和发送读或写存储器的命令;可编程逻辑器件,用于接收校验命令,该命令包含起始地址、结束地址、启动标识,并将所述校验命令存储,根据校验命令中的起始地址、结束地址及启动标识对对存储器中的数据读取并校验;校验完成后将校验结果保存,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;存储器,用于保存控制器运行时需要的数据;接收到控制器发送的读或写存储器的命令时,执行相应的操作;所述可编程逻辑器件在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储,将所述读或写存储器的命令发送给存储器后,获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存。
综上所述,通过本发明提供的实施例,CPU可以在电路板需要对存储器中的数据检测时,及时通过数据校验装置对存储器进行校验,并且能够指定数据校验装置对存储器的特定空间进行校验,准确定位出错原因,减少了在CPU运行过程中因存储器内容出错导致电路板死机的情况;并且校验过程占有较少的CPU资源,从而进一步提高了电路板的工作效率。
附图说明
图1为本发明实施例1流程图;
图2为本发明实施例2流程图;
图3为本发明实施例3装置图;
图4为本发明实施例4系统图。
具体实施方式
本发明实施例给出了CPU通过控制硬件来实现对存储器进行电路板运行时的读取和校验的方法,下面详细介绍本发明实施例:
实施例1,参见图1,一种数据校验的方法:
步骤101:CPU发送存储校验命令,该命令中包含起始地址、结束地址、启动标识;启动标识的意义可以是告诉数据校验装置在存储了起始地址、结束地址后,开始数据校验的时间,也就是说不能在接收到存储校验命令后就马上开始数据校验,若只存储起始地址而没有存储结束地址会造成程序上的混乱;
步骤102:数据校验装置接收、存储CPU发送的存储校验命令;
步骤103:数据校验装置在接收到该命令后清除之前保存的校验结果。
该步骤中,如果是第一次执行该步骤时,校验结果为系统设定的初始值,不是有实际意义的校验结果;相应的也可以说清楚之前保存的校验结果可以是将之前保存的校验结果恢复成系统设定的初始值。另外,这一步骤是为了进一步保证操作的精确性设定的,可以不做。
步骤104:数据校验装置根据存储的校验命令中的起始地址、结束地址及启动标识对存储器中的数据进行读取并校验;
步骤105:在校验完成后,数据校验装置将校验结果保存;
CPU可以通过读取数据校验装置中保存的校验结果信息,从而获知存储器是否出错。
在实施例1中,为了更加方便CPU获得数据校验装置的校验情况,在数据校验装置中可以存储一个校验状态标识,相应的清除校验结果时也需要清楚之前保存的校验状态标识。数据校验装置在校验过程中时,将校验状态标识设定为表示“未完成”的状态;当校验完成,则将校验状态标识设定为表示“已完成”的状态。这样,CPU只要通过对校验状态标识的读取就可以了解到校验过程,从而确定是否可以到数据校验装置中读取检验结果。采用本发明实施例,CPU可以随时对存储器进行校验,减少了在CPU运行过程中因存储器内容出错导致电路板死机的情况。
另外,进一步地,数据校验装置可以用硬件实现。
通过计算,发现如果数据校验装置为硬件的话,CPU通过控制数据校验装置来完成对8M存储器读操作的话,片选信号和读信号可以始终有效,这样所需的时间为:
8*1024*1024*100*(10-9)=0.85秒
而CPU直接通过软件读取的速度为3.4s可以看出硬件要比软件快4倍。因此如果数据校验装置采用硬件实现,CPU不但可以随时对存储器进行校验,并且校验过程占有较少的CPU资源,从而进一步提高了电路板的工作效率。
实施例2,参见图2,本发明实施例还提供了一种数据校验的方法:
步骤201:CPU发送存储校验命令,该命令中包含起始地址、结束地址、启动标识;启动标识的意义可以是告诉数据校验装置在存储了起始地址、结束地址后,开始数据校验的时间,也就是说不能在接收到存储校验命令后就马上开始数据校验,若只存储起始地址而没有存储结束地址会造成程序上的混乱。
步骤202:数据校验装置接收、存储CPU发送的存储校验命令,并清除之前保存的校验结果;
该步骤中,如果是第一次执行该步骤时,校验结果为系统设定的初始值,不是有实际意义的校验结果;相应的也可以说清楚之前保存的校验结果可以是将之前保存的校验结果恢复成系统设定的初始值。
该步骤中,为了提高整个运行过程中逻辑的可靠性和行为的可预测性,数据校验装置还可以将接收的CPU发送的存储校验命令存储。
步骤203:数据校验装置根据存储的校验命令中的起始地址、结束地址及启动标识对存储器中的数据进行读取并校验,在校验过程中收到CPU发送的读或写存储器的命令,执行步骤204;
步骤204:暂停对存储器数据读取、校验,并存储当前读取、校验的存储器地址,并将所述读或写存储器的命令发送给存储器,然后执行步骤205;
步骤205:通过存储的当前读取、校验的存储器地址,继续对存储器的数据进行读取、校验;
步骤206:校验完成后,数据校验装置将校验结果保存。
为了更加方便CPU获得数据校验装置的校验情况,在数据校验装置中可以存储一个校验状态标识,相应的清除校验结果时也需要清楚之前保存的校验状态标识。在步骤203中,将校验状态标识设定为表示“未完成”的状态;在步骤206中,当校验完成,则将校验状态标识设定为表示“已完成”的状态。这样,CPU只要通过对校验状态标识的读取就可以了解到校验过程,从而确定是否可以到数据校验装置中读取检验结果。
该实施例通过在进行读取校验时并且接收到CPU发送的读或写存储器的命令后,暂停对存储器数据读取、校验,执行CPU发送的读或写存储器的命令,在CPU对存储器的读或写操作完成后自动恢复对存储器数据读取、校验。这样保证了CPU工作的连续性,保证了CPU工作的效率。
在实施例2中提到的CPU发送的读或写存储器的命令中包括的存储器地址在校验命令中的地址范围之内,也可以在校验命令中的地址范围之外。除了上述实施例1与实施例2的情况外,有时数据校验装置在不进行校验时,会接收到CPU发送的读或写存储器的命令,那么此时可以只需要将CPU的命令转发到存储器就可以了。
实施例3,参见图3,对应于本发明实施例1,本发明实施例还提供了一种数据校验装置,该装置包括:
读写控制单元301,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验;在校验完成后将校验结果保存在检测结果寄存器305中;
其中,所述校验命令中包含起始地址、结束地址、启动标识,在将校验命令进行存储时,具体是将校验命令中的开始地址保存在起始地址寄存器302中,结束地址保存在结束地址寄存器303中,以及将启动标识保存在命令寄存器304中。其中,启动标识的意义可以是告诉数据校验装置在存储了起始地址、结束地址后,开始数据校验的时间,也就是说不能在接收到存储校验命令后就马上开始数据校验,若只存储起始地址而没有存储结束地址会造成程序上的混乱;
起始地址寄存器302,用于存储校验命令中的开始地址;
结束地址寄存器303,用于存储校验命令中的结束地址;
命令寄存器304,用于存储校验命令中的启动标识;
检测结果寄存器305,用于存储校验结果。
在实施例3中,进一步地,为了更加方便CPU获得数据校验装置的校验情况,在数据校验装置中可以设置一个完成状态寄存器306,用来存储读写控制单元设定的校验状态标识。读写控制单元301进一步用于在接收到校验命令时进一步清除保存在完整状态寄存器中的数据;在校验过程中将状态寄存器306中的校验状态标识设定为表示“未完成”的状态;在校验完成后,将状态寄存器306中的校验状态标识设定为表示“已完成”的状态。这样,CPU只要通过对校验状态标识的读取就可以了解到校验过程,从而确定是否可以到数据校验装置中读取检验结果。
进一步地,所述读写控制单元301具体为第一读写控制单元,所述第一读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,在校验完成后,将校验结果保存在检测结果寄存器305中;不进行校验时,收到CPU发送的读或写存储器的命令时,将所述读或写存储器的命令发送给存储器。
或者
所述数据校验装置还包括当前校验地址寄存器,所述当前校验地址寄存器307用于存储检验过程中的存储器的地址;
所述读写控制单元301具体为第二读写控制单元,所述第二读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验;在校验过程中,收到CPU发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储在当前校验地址寄存器307中,将所述读或写存储器的命令发送给存储器后,,从校验地址寄存器获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存在检测结果寄存器305中。
通过在接收到CPU发送的读或写存储器的命令时,暂停对存储器数据读取、校验,执行CPU发送的读或写存储器的命令,在CPU对存储器的读或写操作完成后自动恢复对存储器数据读取、校验。这样保证了CPU工作的连续性,保证了CPU工作的效率。
实施例4,参见图4,对应于上述实施例1,本发明实施例还提供了一种数据校验系统,系统包括:
控制器401,用于向数据校验装置发送校验命令;
数据校验装置402,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器,清除之前保存的校验结果;根据校验命令中的起始地址、结束地址及启动标识对存储器中的数据读取并校验;校验完成后将校验结果保存;
其中,所述校验命令中包含起始地址、结束地址、启动标识,在将校验命令进行存储时,具体是将校验命令中的开始地址、结束地址、启动标识分别保存。其中,启动标识的意义可以是告诉数据校验装置在存储了起始地址、结束地址后,开始数据校验的时间,也就是说不能在接收到存储校验命令后就马上开始数据校验,若只存储起始地址而没有存储结束地址会造成程序上的混乱。
存储器403,用于保存控制器运行时需要的数据。
在实施例4中,进一步地,为了更加方便控制器获得数据校验装置的校验情况,在数据校验装置中可以设置用来存储其设定的校验状态标识。数据校验装置进一步用于在接收到清除命令,清除之前保存在检测结果寄存器的数据时进一步清除之前保存在完整状态寄存器的数据,在校验过程中将校验状态标识设定表示“未完成”的状态;在校验完成后,校验状态标识设定表示“已完成”的状态。这样,控制器只要通过对校验状态标识的读取就可以了解到校验过程,从而确定是否可以到数据校验装置中读取检验结果。
进一步地,所述的控制器,还用于向数据校验装置发送读或写存储器的命令。所述数据校验装置具体为第一读写控制单元,所述第一读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,在校验完成后,将校验结果保存在检测结果寄存器中;不进行校验时,收到CPU发送的读或写存储器的命令时,将所述读或写存储器的命令发送给存储器;
所述的存储器,还用于接收到控制器发送的读或写存储器的命令时,执行相应的操作。
或者
所述的控制器,还进一步用于向数据校验装置发送读或写存储器的命令;
所述数据校验装置具体为为第二读写控制单元,所述第二读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验;在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储,将所述读或写存储器的命令发送给存储器后,获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存;
所述的存储器,还进一步用于接收到控制器发送的读或写存储器的命令时,执行相应的操作。
本发明实施例中提到的数据校验装置可以由PLD(Programmable LogicDevice可编程逻辑器件)来实现,所述的PLD连接在CPU桥片的memory接口和存储器之间;若某些CPU自带memory接口,将PLD连接在CPU的memory接口和存储器之间。
综上所述通过本发明实施例,CPU不但可以随时对存储器进行校验,减少了在CPU运行过程中因存储器内容出错导致电路板死机的情况;并且校验过程占有较少的CPU资源,从而进一步提高了电路板的工作效率。
以上对本发明所提供的存储器数据校验方法、装置、可编程逻辑器件及系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (19)
1.一种存储器数据校验的方法,其特征在于,该方法包括:
接收校验命令,该命令包含起始地址、结束地址、启动标识,并将所述校验命令存储,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;
根据校验命令中的起始地址、结束地址及启动标识对对存储器中的数据读取并校验;校验完成后将校验结果保存;
在校验过程中收到控制器发送的读或写存储器的命令,则暂停对存储器数据读取、校验,并存储当前读取、校验的存储器地址,将所述读或写存储器的命令发送给存储器;根据存储的当前读取、校验的存储器地址恢复对存储器数据读取、校验。
2.根据权利要求1所述的存储器数据校验的方法,其特征在于,当对存储的数据读取并校验过程中,将校验状态标识设定为表示未完成的状态;当校验完成并将校验结果保存后,将校验状态标识设定为表示完成的状态;设定了校验状态标识后,在清除之前保存的校验结果时进一步清除之前保存的校验状态。
3.根据权利要求1所述的存储器数据校验的方法,其特征在于,
不进行校验时,接收到控制器发送的读或写存储器的命令,将控制器发送的读或写存储器的命令转发到存储器。
4.根据权利要求1所述的存储器数据校验的方法,其特征在于,还包括:
在接收校验命令时,清除之前保存的校验结果。
5.一种存储器数据校验装置,其特征在于,该装置包括:
读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,校验完成后将校验结果保存在检测结果寄存器中,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;
起始地址寄存器,用于存储校验命令中的开始地址;
结束地址寄存器,用于存储校验命令中的结束地址;
命令寄存器,用于存储校验命令中的启动标识;检测结果寄存器,用于存储校验结果;当前校验地址寄存器,用于存储检验过程中的存储器的地址;
读写控制单元在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储在当前校验地址寄存器中,将所述读或写存储器的命令发送给存储器后,从校验地址寄存器获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存在检测结果寄存器中。
6.根据权利要求5所述的存储器数据校验装置,其特征在于,该装置进一步包括完成状态寄存器,用于存储校验状态标识;
读写控制单元进一步用于,在接收到校验命令时,清除保存在完成状态寄存器中的数据;在校验过程中设定校验状态标识为未完成并保存在完成状态寄存器中;在校验完成后设定校验状态标识为完成并保存在完成状态寄存器中。
7.根据权利要求5所述的存储器数据校验装置,其特征在于,读写控制单元具体为第一读写控制单元,所述的第一读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,在校验完成后,将校验结果保存在检测结果寄存器中;不进行校验时,收到控制器发送的读或写存储器的命令时,将所述读或写存储器的命令发送给存储器。
8.一种存储器数据校验系统,其特征在于,系统包括:
控制器,用于向数据校验装置发送校验命令,和发送读或写存储器的命令;
数据校验装置,用于接收校验命令,该命令包含起始地址、结束地址、启动标识,并将所述校验命令存储,根据校验命令中的起始地址、结束地址及启动标识对对存储器中的数据读取并校验;校验完成后将校验结果保存,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;
存储器,用于保存控制器运行时需要的数据,在接收到控制器发送的读或写存储器的命令时,执行相应的操作;
所述数据校验装置在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储,将所述读或写存储器的命令发送给存储器后,获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存。
9.根据权利要求8所述的存储器数据校验系统,其特征在于,
所述数据校验装置包括:
读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,校验完成后将校验结果保存在检测结果寄存器中;
起始地址寄存器,用于存储校验命令中的开始地址;
结束地址寄存器,用于存储校验命令中的结束地址;
命令寄存器,用于存储校验命令中的启动标识;
检测结果寄存器,用于存储校验结果。
10.根据权利要求8所述的存储器数据校验系统,其特征在于,该装置进一步包括完成状态寄存器,用于存储校验状态标识;
读写控制单元进一步用于,在接收到校验命令时,清除保存在完成状态寄存器中的数据;在校验过程中设定校验状态标识为未完成并保存在完成状态寄存器中;在校验完成后设定校验状态标识为完成并保存在完成状态寄存器中。
11.根据权利8所述的存储器数据校验系统,其特征在于,
所述的控制器,进一步用于向数据校验装置发送读或写存储器的命令;
所述数据校验装置具体为第一读写控制单元,所述第一读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,在校验完成后,将校验结果保存;不进行校验时,收到CPU发送的读或写存储器的命令时,将所述读或写存储器的命令发送给存储器。
12.一种可编程逻辑器件,其特征在于,该可编程逻辑器件包括:
读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,校验完成后将校验结果保存在检测结果寄存器中,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;
起始地址寄存器,用于存储校验命令中的开始地址;
结束地址寄存器,用于存储校验命令中的结束地址;
命令寄存器,用于存储校验命令中的启动标识;检测结果寄存器,用于存储校验结果;当前校验地址寄存器,用于存储检验过程中的存储器的地址;
读写控制单元在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储在当前校验地址寄存器中,将所述读或写存储器的命令发送给存储器后,从校验地址寄存器获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存在检测结果寄存器中。
13.根据权利要求12所述的可编程逻辑器件,其特征在于,该可编程逻辑器件进一步包括完成状态寄存器,用于存储校验状态标识;
读写控制单元进一步用于,在接收到校验命令时,清除保存在完成状态寄存器中的数据;在校验过程中设定校验状态标识为未完成并保存在完成状态寄存器中;在校验完成后设定校验状态标识为完成并保存在完成状态寄存器中。
14.根据权利要求12所述的可编程逻辑器件,其特征在于,读写控制单元具体为第一读写控制单元,所述的第一读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,在校验完成后,将校验结果保存在检测结果寄存器中;不进行校验时,收到控制器发送的读或写存储器的命令时,将所述读或写存储器的命令发送给存储器。
15.一种存储器数据校验系统,其特征在于,该系统包括:
控制器,用于向数据校验装置发送校验命令,和发送读或写存储器的命令;
可编程逻辑器件,用于接收校验命令,该命令包含起始地址、结束地址、启动标识,并将所述校验命令存储,根据校验命令中的起始地址、结束地址及启动标识对对存储器中的数据读取并校验;校验完成后将校验结果保存,所述启动标识用于标识在存储了起始地址和结束地址后,开始数据校验的时间;
存储器,用于保存控制器运行时需要的数据;接收到控制器发送的读或写存储器的命令时,执行相应的操作;
所述可编程逻辑器件在校验过程中,收到控制器发送的读或写存储器的命令时,暂停对存储器数据读取、校验,并将当前读取、校验的存储器地址存储,将所述读或写存储器的命令发送给存储器后,获取当前读取、校验的存储器地址,并恢复对存储器数据读取、校验,在校验完成后将校验结果保存。
16.根据权利要求15所述的存储器数据校验系统,其特征在于,
所述可编程逻辑器件包括:
读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,校验完成后将校验结果保存在检测结果寄存器中;
起始地址寄存器,用于存储校验命令中的开始地址;
结束地址寄存器,用于存储校验命令中的结束地址;
命令寄存器,用于存储校验命令中的启动标识;
检测结果寄存器,用于存储校验结果。
17.根据权利要求15所述的存储器数据校验系统,其特征在于,
所述可编程逻辑器件进一步包括完成状态寄存器,用于存储校验状态标识;
读写控制单元进一步用于,在接收到校验命令时,清除保存在完成状态寄存器中的数据;在校验过程中设定校验状态标识为未完成并保存在完成状态寄存器中;在校验完成后设定校验状态标识为完成并保存在完成状态寄存器中。
18.根据权利15所述的存储器数据校验系统,其特征在于,
所述的控制器,还用于向数据校验装置发送读或写存储器的命令;
所述可编程逻辑器件具体为第一读写控制单元,所述第一读写控制单元,用于接收校验命令,该命令包含起始地址、结束地址、启动标识;将校验命令中的开始地址保存在起始地址寄存器,结束地址保存在结束地址寄存器,及将启动标识保存在命令寄存器;并根据校验命令中的起始地址、结束地址及启动标识对存储器数据读取并校验,在校验完成后,将校验结果保存在检测结果寄存器中;不进行校验时,收到控制器发送的读或写存储器的命令时,将所述读或写存储器的命令发送给存储器。
19.根据权利要求15所述的存储器数据校验系统,其特征在于,
所述的可编程逻辑器件连接在控制器桥片的memory接口和存储器之间;或者
所述可编程逻辑器件连接在控制器的memory接口和存储器之间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101457419A CN101377749B (zh) | 2007-08-31 | 2007-08-31 | 存储器数据校验方法、装置、可编程逻辑器件及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101457419A CN101377749B (zh) | 2007-08-31 | 2007-08-31 | 存储器数据校验方法、装置、可编程逻辑器件及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101377749A CN101377749A (zh) | 2009-03-04 |
CN101377749B true CN101377749B (zh) | 2010-06-02 |
Family
ID=40421303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101457419A Active CN101377749B (zh) | 2007-08-31 | 2007-08-31 | 存储器数据校验方法、装置、可编程逻辑器件及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101377749B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104583973B (zh) * | 2012-08-07 | 2017-09-08 | 松下知识产权经营株式会社 | 记录装置、记录系统以及记录方法 |
CN102880524A (zh) * | 2012-09-27 | 2013-01-16 | 上海宏力半导体制造有限公司 | 一种校正信息载入方法 |
CN105900060B (zh) * | 2014-11-07 | 2019-05-03 | 华为技术有限公司 | 内存访问方法、装置和计算机设备 |
CN107430533B (zh) * | 2015-09-30 | 2019-11-29 | 华为技术有限公司 | 一种数据校验方法和装置 |
CN107783725A (zh) * | 2016-08-30 | 2018-03-09 | 南京中兴新软件有限责任公司 | 数据存储的方法、装置以及非易失性存储器 |
CN109144754B (zh) * | 2018-08-27 | 2022-04-22 | 郑州云海信息技术有限公司 | 一种可靠性测试方法及装置 |
US11309894B2 (en) * | 2020-03-31 | 2022-04-19 | Gowin Semiconductor Corporation | Method and system providing FPGA device identification via a set of embedded signature registers |
CN112104667B (zh) * | 2020-11-09 | 2021-02-09 | 湖南戎腾网络科技有限公司 | 一种流量控制方法、装置及系统 |
CN112579340B (zh) * | 2020-12-10 | 2023-03-21 | 潍柴动力股份有限公司 | 电子控制单元的数据校验方法、装置、设备及存储介质 |
CN113157633B (zh) * | 2021-01-28 | 2023-05-26 | 厦门智多晶科技有限公司 | 一种在sec校验中启动重配置的方法、装置及fpga |
CN116628767B (zh) * | 2023-07-20 | 2023-10-17 | 常州楠菲微电子有限公司 | 一种预防系统启动后flash系统固件攻击方法及flash控制器 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1767072A (zh) * | 2004-09-09 | 2006-05-03 | 三星电子株式会社 | 错误检测存储器模块和方法 |
-
2007
- 2007-08-31 CN CN2007101457419A patent/CN101377749B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1767072A (zh) * | 2004-09-09 | 2006-05-03 | 三星电子株式会社 | 错误检测存储器模块和方法 |
Non-Patent Citations (1)
Title |
---|
JP特开平10-232794A 1998.09.02 |
Also Published As
Publication number | Publication date |
---|---|
CN101377749A (zh) | 2009-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101377749B (zh) | 存储器数据校验方法、装置、可编程逻辑器件及系统 | |
CN102662785B (zh) | 一种Android系统内核错误信息获取方法及装置 | |
TWI470420B (zh) | 除錯方法及電腦系統 | |
CN100458692C (zh) | 开机自我测试除错系统及方法 | |
US7882395B2 (en) | Debug device for embedded systems and method thereof | |
CN106547653B (zh) | 计算机系统故障状态检测方法、装置及系统 | |
US10606677B2 (en) | Method of retrieving debugging data in UEFI and computer system thereof | |
CN103150188B (zh) | 非x86指令集计算机的x86兼容显卡快速初始化方法 | |
US20090300588A1 (en) | Method and apparatus for acquiring definitions of debug code of basic input/output system | |
CN101923504B (zh) | 读卡器测试治具及读卡器测试方法 | |
CN115547396B (zh) | 一种针对eMMC的测试方法和装置 | |
CN103678053A (zh) | 计算机自检方法和系统 | |
US7747909B2 (en) | Debug card | |
CN114765051A (zh) | 内存测试方法及装置、可读存储介质、电子设备 | |
KR100621095B1 (ko) | 주변 장치 초기화를 위한 부팅 시스템 및 부팅 방법 | |
KR20170079368A (ko) | 디버그 정보를 수집하기 위한 디버그 로직을 포함하는 cpu 시스템, 이를 포함하는 컴퓨팅 시스템 및 이의 디버깅 방법 | |
CN114496053A (zh) | 数据异常检测方法、装置、设备及计算机可读存储介质 | |
CN111061603B (zh) | 可记录自检数据的主板和计算机、自检数据的记录方法 | |
US7240267B2 (en) | System and method for conducting BIST operations | |
CN104699418B (zh) | 对安全数码卡进行异常恢复的方法及设备 | |
EP3557422A1 (en) | Method for accessing code sram, and electronic device | |
CN115129384A (zh) | 一种电子设备的启动程序的运行方法和电子设备 | |
TWI794997B (zh) | 固態硬碟裝置的除錯方法及裝置以及電腦程式產品 | |
CN109491870A (zh) | 一种传感器的接入状态的检测方法及装置 | |
CN110675911B (zh) | Ddr修复方法、装置、终端和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |