CN113330411B - 一种存储控制器和数据搬迁监测方法 - Google Patents
一种存储控制器和数据搬迁监测方法 Download PDFInfo
- Publication number
- CN113330411B CN113330411B CN201980089806.3A CN201980089806A CN113330411B CN 113330411 B CN113330411 B CN 113330411B CN 201980089806 A CN201980089806 A CN 201980089806A CN 113330411 B CN113330411 B CN 113330411B
- Authority
- CN
- China
- Prior art keywords
- data
- storage area
- relocation
- memory
- signal
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请实施例公开了一种存储控制器和数据搬迁监测方法。这里,该存储控制器和存储器耦合。上述存储器包括第一存储器区域和第二存储区域。该存储控制器包括:数据搬迁电路、数据操作判别电路。数据搬迁电路用于产生搬迁信号,以将第一存储区域中的数据搬迁至第二存储区域。在数据搬电路将第一存储区域中的所有数据搬迁至第二存储区域的过程中,数据操作判别电路用于接收并监测输入至存储器的数据操作信号,并在监测到该数据操作信号为针对第一存储区域的数据改写信号时,输出数据搬迁失败信号。采用本申请实施例,可提升数据搬迁方法的效率、准确率和适用性。
Description
技术领域
本申请涉及电子技术领域,尤其涉及一种存储控制器和数据搬迁监测方法。
背景技术
近些年来,随着计算机技术和电子器件制造工艺的不断发展,各式各样的计算机系统不断出现。存储器作为计算机系统不可或缺的关键组成部分,人们对于存储器的可用性和可靠性的要求也变得越来越高。实际应用中,存储器易因环境压力(如存储器所处环境温度过高)和周边压力(如存储器外围电路接触不良)的干扰造成永久性或者短暂性的失效,如何在短时间内发现存储器失效情况并及时的进行处理,成为了当前较为热门的研究点之一。
现有技术中,通常采用不中断存储器正常工作状态的实时检测技术对存储器进行检测,以及时发现存储器失效的情况。在实际应用中,上述实时检测技术都会涉及到存储器数据搬迁,如存储器数据的备份和恢复。而在数据搬迁过程中,需要保证搬迁操作的原子性,即被搬迁数据在搬迁前后应保证完全一致,若搬迁过程中被搬迁数据被改写,则需要重新进行数据搬迁。但是,现有的数据搬迁方法中,无法及时检测到被搬迁数据被改写这一情况,导致数据搬迁过程中出现许多因数据搬迁失败导致的无效的数据操作,从而使得现有的数据搬迁方法效率低、准确率低、适用性差。
发明内容
本申请实施例提供一种存储控制器和数据搬迁监测方法,可提升数据搬迁方法的效率、准确率及适用性。
第一方面,本申请实施例提供了一种存储控制器。该存储控制器与存储器耦合。该存储控制器包括:数据搬迁电路和数据操作判别电路。上述数据搬迁电路的一端与存储器的一端相连接,上述数据搬迁电路的另一端与数据操作判别电路的一端相连接。上述数据操作判别电路另一端与存储器的一端相连接。上述存储器包括第一存储区域和第二存储区域。上述数据搬迁电路可用于产生搬迁信号,该搬迁信号用于将第一存储区域中的数据搬迁至第二存储区域。在上述数据搬电路将第一存储区域中的所有数据搬迁至第二存储区域的数据搬迁过程中,上述数据操作判别电路用于接收并监测输入至上述存储器的数据操作信号。在监测到上述数据操作信号为针对上述第一存储区域的数据改写信号时,输出数据搬迁失败信号。
在本申请实施例中,在数据搬迁电路将存储器的第一存储区域的数据搬迁至第二存储区域的过程中,通过数据操作判别电路对输入到存储器中的数据操作信号进行实时的监测,以及时判断出数据搬迁失败这一情况,从而可减少因数据搬迁失败造成的无效数据搬迁操作,提升了基于该存储控制器的数据搬迁方法的效率、准确率及适用性。
结合第一方面,在第一种可能的实现方式中,上述数据操作判别电路还用于在上述数据搬迁过程中未监测到上述针对第一存储区域的数据改写信号时,输出数据搬迁成功信号。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,上述存储控制器还包括地址切换电路。上述地址切换电路用于:在监测到上述数据搬迁成功信号后,将针对上述第一存储区域的数据操作信号所指向的数据存储地址由上述第一存储区域的存储地址切换成上述第二存储区域中相应的存储地址。在确定数据搬迁成功后,通过地址切换电路进行地址切换,可避免依靠软件进行地址切换带来的数据处理时延,提升了基于上述存储控制器的数据搬迁方法的效率。同时,也能保证数据搬迁完成后针对第一存储区域的数据操作能够被正确的执行。
结合第一方面或第一方面的第一种可能的实现方式到第二种可能的实现方式中的任一种,在第三种可能的实现方式中,所述数据操作判别电路包括地址判别电路、操作类型判别电路。这里,所述地址判别电路用于接收并提取出所述数据操作信号所指向的数据存储地址,确定所述数据存储地址是否为所述第一存储区域的存储地址。所述操作类型判别电路用于当监测到所述地址判别电路确定所述数据存储地址为所述第一存储区域的存储地址时,提取所述数据操作信号对应的数据操作类型。所述操作类型判别电路还用于当所述数据操作类型为数据改写时,确定所述数据操作信号为针对所述第一存储区域的数据改写信号并输出数据搬迁失败信号。数据操作判别电路通过数据操作信号所指向的数据存储地址和数据操作信号对应的操作类型最终确定出该数据操作信号是否为针对第一存储区域的数据改写操作,过程简单,易于实现,且可保证数据操作判别电路判别结果的准确性。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,上述操作类型判别电路具体用于当监测到上述数据操作信号为针对第一存储区域的数据改写信号时,若接收到上述数据操作信号对应的响应成功信号,则输出数据搬迁失败信号。这里,上述响应成功信号用于指示上述数据操作信号指向的数据存储地址上的数据被改成完成。操作类型判别电路在确定数据改写操作被执行成功的情况下才输出数据搬迁失败信号,可避免因数据操作信号所请求的数据改写操作执行失败造成的搬迁结果误判,从而减少因搬迁结果误判带来的无效操作,可提升数据搬迁方法的效率和准确率。
结合第一方面的第三种可能的实现方式或第四种可能的实现方式,在第五种可能的实现方式中,上述操作类型判别电路还用于:在监测到上述数据操作信号为针对第一存储区域的数据改写信号时,触发上述数据搬迁电路记录上述数据操作信号所指向的数据存储地址。上述数据搬迁电路还用于:在将上述第一存储区域的数据均搬迁至第二存储区域后,再次将上述数据操作信号所指向的数据存储地址上的数据由第一存储区域搬迁至第二存储区域。记录存在数据改写操作的数据存储地址,并继续执行数据搬迁操作直至将上述第一存储区域的数据均搬迁至第二存储区域。然后再对存在数据改写操作的数据存储地址上的数据重新进行数据搬迁操作,可使得数据搬迁电路无需对不存在数据改写操作的数据存储地址上的数据重复进行数据搬迁操作,可提升数据搬迁方法的效率。
结合第一方面的第三种可能的实现方式或第四种可能的实现方式,在第六种可能的实现方式中,上述数据操作判别电路还用于:在监测到上述数据操作信号包括针对上述第一存储区域的数据改写信号时,触发上述数据搬迁电路停止数据搬迁。在监测到针对上述第一存储区域的数据改写信号时,触发数据搬迁电路停止数据搬迁操作,可减少数据搬迁电路进行无效的数据搬迁操作,提升了数据搬迁方法的效率。
结合第一方面或者第一方面的第一种可能的实现方式到第六种可能的实现方式中任一种,在第七种可能的实现方式中,若操作类型判别电路监测到上述数据操作信号包括针对上述第一存储区域的数据改写信号,则直至上述数据搬迁电路将上述第一存储区域的所有数据均搬迁至第二存储区域后,触发上述数据搬迁电路停止数据搬迁,并在上述监测电路的输出端输出搬迁失败信号。
结合第一方面或第一方面的第一种可能的实现方式到第七种可能的实现方式中的任一种,在第八种可能的实现方式中,上述数据搬迁电路在监测到数据搬迁启动信号后,可产生上述搬迁信号。这里,上述数据搬迁启动信号指示了上述第一存储区域的存储地址和上述第二存储区域的存储地址。
第二方面,本申请实施例提供了一种数据搬迁监测方法。可在将存储器的第一存储区域的所有数据搬迁至上述存储器的第二存储区域的过程中,监测针对上述存储器的数据操作。当监测到上述数据操作为针对上述第一存储区域的数据改写操作时,确定数据搬迁失败。
在本申请实施例中,通过实时监测针对存储器的数据操作,从而可准确且及时的确定出因存在针对第一存储区域的数据改写操作而导致的数据搬迁失败,继而可减少由数据搬迁失败导致的无效的数据操作,可提升基于该数据搬迁监测方法的数据搬迁过程的效率、准确率及适用性。
结合第二方面,在第一种可行的实施方式中,若上述第一存储区域内的数据均搬迁至上述第二存储区域且未监测到针对上述第一存储区域的改写操作,则确定数据搬迁成功。
结合第二方面的第一种可行的实施方式,在第二种可行的实施方式中,当确定数据搬迁成功时,将针对所述第一存储区域的数据操作所指向的数据存储地址由所述第一存储区域中的存储地址切换成所述第二存储区域中对应的存储地址。由于数据搬迁成功这一结果发现的更为及时,因此,在确定数据搬迁成功后立刻进行地址切换,也可进一步提升数据搬迁过程的效率。同时,也能保证数据搬迁完成后针对第一存储区域的数据操作能够被正确的执行。
结合第二方面或者第二方面的第一种可行的实施方式到第二种可行的实施方式中的任一种,在第三种可行的实施方式中,当确定上述数据操作指向的数据存储地址为上述第一存储区域的存储地址时,获取上述数据操作对应的数据操作类型。若上述数据操作对应的数据操作类型为数据改写,则可确定上述数据操作为针对上述第一存储区域的数据改写操作。通过数据操作所指向的数据存储地址和数据操作对应的操作类型来判断针对上述存储器的数据操作中是否为针对上述第一存储区域的改写操作,可保证上述判断的结果的有效性,并且该方法易于实现,有助于提升数据搬迁方法的效率。
结合上述第二方面或者第二方面的第一种可行的实施方式到第三种可行的实施方式中的任一种,在第四种可行的实施方式中,若确定所述针对所述第一存储区域的数据改写操作执行成功,则确定数据搬迁失败。在监测到有针对于第一存储区域的数据改写操作并且在确定改写成功的情况下,确定数据搬迁失败,可避免因数据改写操作未成功执行造成的误判,提升了数据搬迁监测方法的准确性。
结合上述第二方面或者第二方面的第一种可行的实施方式到第四种可行的实施方式中的任一种,在第五种可行的实施方式中,当确定数据搬迁失败时,可停止数据搬迁。在确定搬迁失败后,立即停止本次数据搬迁,可减小无效的数据搬迁操作,可提升数据搬迁的效率。
结合第二方面或第二方面的第一种可行的实施方式到第五种可行的实施方式中任一种,在第六种可行的实施方式中,当上述数据操作的为针对第一存储区域的数据改写操作时,记录所述数据操作指向的数据存储地址。在所述第一存储区域内的数据均搬迁至所述第二存储区域后,再次将上述数据操作所指向的存储地址上的数据由第一存储区域搬迁至第二存储区域。对所述第一数据操作指向的数据存储地址重新进行数据搬迁操作。记录存在数据改写操作的数据存储地址,在将上述第一存储区域的数据均搬迁至第二存储区域后,再对存在数据改写操作的数据存储地址重新进行数据搬迁操作,可避免对不存在数据改写操作的数据存储地址重复进行数据搬迁操作,可提升数据搬迁方法的效率。
结合上述第二方面或者第二方面的第一种可行的实施方式到第六种可行的实施方式中任一种,在第七种可行的实施方式中,当确定数据搬迁失败时,直至将上述第一存储区域内的数据均搬迁至上述第二存储区域后,停止数据搬迁操作。
结合上述第二方面的第一种可行的实施方式到第六种可行的实施方式中任一种,在第七种可行的实施方式中,当确定搬迁失败或者搬迁成功时,上报当前搬迁状态为搬迁失败状态或者搬迁成功状态。主动上报当前的数据搬迁状态为失败状态或者成功状态,可使得数据搬迁失败或者数据搬迁成功这一结果能够被及时的获知,可避免后续出现更多的针对存储器的无效数据操作,可提升存储器的响应速度,从而提升了数据搬迁方法的效率。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,上述处理器和存储器相互连接。其中,上述存储器用于存储计算机程序,上述计算机程序包括程序指令,上述处理器被配置用于调用上述程序指令执行上述第二方面提供的存储器的数据搬迁监测方法,也能实现上述第二方面提供的存储器的数据搬迁监测方法所具备的有益效果。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当该指令在计算机上运行时,使得计算机执行上述第二方面中任意一种可能的实现方式所提供的存储器的数据搬迁监测方法,也能实现第二方面提供的存储器的数据搬迁监测方法所具备的有益效果。
第五方面,本申请实施例提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述第二方面提供的存储器的数据搬迁监测方法,也能实现第二方面提供的存储器的数据搬迁监测方法所具备的有益效果。
第六方面,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于实现上述第二方面中所涉及的功能,例如,生成或者处理上述第二方面提供的存储器的数据搬迁监测方法中所涉及的信息。在一种可能的设计中,上述芯片系统还包括存储器,该存储器用于保存终端必需的程序指令和数据。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
采用本申请实施例,可提升数据搬迁方法的效率、准确率及适用性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本申请实施例提供的存储控制器一结构示意图;
图2是本申请实施例提供的存储控制器又一结构示意图;
图3是本申请实施例提供的存储控制器又一结构示意图;
图4是本申请实施例提供的存储控制器又一结构示意图;
图5是本申请实施例提供的数据搬迁监测方法的流程示意图;
图6是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请实施例中,如存储器的第一存储区域、存储器的第二存储区域之前的第一和第二仅用于区别不同的存储区域,不具有其他限定作用。可以理解到的是,当上述存储器为一个独立的存储器件时,上述第一存储区域和第二存储区域指代的是上述存储器内的某一部分存储空间。第一存储区域或者第二存储区域的存储地址指代是的某一存储空间对应的一段存储地址。当上述存储器是由多个独立的存储颗粒组成时,上述第一存储区域和第二存储区域指代的是上述存储器内的不同的存储颗粒。此时,第一存储区域或者第二存储区域的存储地址指代是的某一存储颗粒对应的一段存储地址。在本申请实施例中,以上述第一存储区域为数据搬出的存储区域,上述第二存储区域为数据搬入的存储区域,以存储器为独立的存储器件这一场景为例进行描述。
实施例一
请参见图1,图1是本申请实施例提供的一种存储控制器一结构示意图。由图1可知,该存储控制器与存储器耦合。需要说明的是,本申请实施例所涉及的存储器和存储控制器可被集成在两个相互耦合的芯片中,也可被同时集成在同一个存储芯片中,此处不作限定。
上述存储控制器具体可包括数据搬迁电路和数据操作判别电路。上述存储器包括第一存储区域和第二存储区域。上述数据搬迁电路用于产生搬迁信号,以将第一存储区域中的数据搬迁至第二存储区域。在上述数据搬电路将上述第一存储区域中的所有数据搬迁至上述第二存储区域的数据搬迁过程中,上述数据操作判别电路用于接收并监测输入至上述存储器的数据操作信号,并在监测到上述数据操作信号为针对上述第一存储区域的数据改写信号时,输出数据搬迁失败信号。
可选的,请一并参见图2,图2是本申请实施例提供的存储控制器又一结构示意图。由图2可知,上述数据搬迁电路的一端作为存储控制器一输入端。上述数据搬迁电路的另一端与上述存储器的一端相连接。上述数据搬迁电路的又一端与上述数据操作判别电路的一端相连接。上述存储器的另一端和上述数据操作判别电路的另一端相连接并接入针对存储器的数据操作信号。上述数据操作判别电路的又一端与上述监测电路的输出端相连接。
具体实现中,当上述数据搬迁电路在其一端(即存储控制一输入端)监测到数据搬迁启动信号后,可对上述数据搬迁启动信号进行解析,以提取出数据搬出的区域(即上述第一存储区域)的存储地址和数据搬入的区域(即上述第二存储区域)的存储地址。然后,数据搬迁电路确定启动数据搬迁操作,并产生一条或者多条搬迁信号,以将第一存储区域内每个存储单元上的数据搬迁至第二存储区域内相应的存储单元上。这里,一条搬迁信号用于将第一存储区域内的一个存储单元中的数据搬迁至第二存储区域内相应的存储单元中。上述第一存储区域和第二存储区域大小相同,并且第一存储区域中包括的存储单元和第二存储区域中包括的存储单元一一对应。例如,假设上述第一存储区域中包括5个存储单元,这5个存储单元的存储地址分别为地址1、地址2、地址3、地址4、地址5。上述5个存储单元中存储有数据a1、a2、a3、a4和a5。上述第二存储区域中也包括5个存储单元,其地址分别为地址6、地址7、地址8、地址9和地址10。数据搬迁电路在监测到上述数据搬迁启动信号后,可产生一条搬迁信号(为方便区别,下文以第一搬迁信号代替描述)将上述地址1对应存储单元中的存储数据a1搬迁至地址6对应的存储单元中。数据搬迁电路在接收到第一搬迁信号的执行成功信号后,可产生新的搬迁信号(这里以第二搬迁信号代替描述),以将上述地址2对应存储单元中存储数据a2搬迁至地址7对应的存储单元中。依次类推,数据搬迁电路在产生5条搬迁信号,并全部执行成功后,即可完成将上述第一存储区域的数据均搬迁至第二存储区域的数据搬迁操作。
上述数据操作判别电路在监测到上述数据搬迁电路确定启动数据搬迁操作时,可对由在该监测电路的数据操作信号输入端接收输入存储器的数据操作信号,并对该数据操作信号进行实时的监控,以确定上述输入存储器的数据操作信号中是否包含针对第一存储区域的数据改写信号。当上述数据操作判别电路监测到输入上述存储器的数据操作信号中包括针对上述第一存储器的数据改写信号时,可在上述监测电路的输出端(即数据操作判别电路的输出端)输出数据搬迁失败信号。需要说明的是,数据搬迁电路监测到上述数据搬迁失败信号后,可在固定周期到达时,对上述第一存储区域再次进行数据搬迁操作,直至监测到数据搬迁成功信号为止。上述数据操作信号指代的是在数据搬迁过程中的不同时刻输入至存储器的数据操作信号。
可选的,具体的,请一并参见图3,图3是本申请实施例提供的存储控制器又一结构示意图。由图3可知,上述数据操作判别电路具体包括地址判别电路和操作类型判别电路。上述地址判别电路一端作为数据判别电路的一端,地址判别电路的另一端与操作类型判别电路的一端相连接。操作类型判别电路的另一端作为数据操作判别电路的输出端(同时也是存储器的一输出端)。上述数据操作信号具体可为包括了数据操作指令信息、数据操作信号指向的存储地址和数据操作类型这三种信息的数据包。地址判别电路在接收到上述数据操作信号后,可先对上述数据操作信号进行解析,以得到上述数据操作信号所指向的数据存储地址。然后,地址判别电路可判断上述数据操作信号所指向的数据存储地址是否包含于上述第一存储区域的存储地址,并向操作类型判别电路发送用于指示其判别结果的地址判别信号。若操作类型判别电路根据上述地址判别信号确定出上述数据操作信号所指向的数据存储地址包含于上述第一存储区域的存储地址,则可从上述数据操作信号中提取上述数据操作信号对应的数据操作类型。若操作类型判别电路监测到上述数据操作信号对应的数据操作类型为数据改写,则可输出数据搬迁失败信号。若地址判别电路检测到上述数据操作信号所指向的数据存储地址不包含于上述第一存储区域的存储地址,或者,上述操作类型判别电路监测到上述数据操作信号对应的数据操作类型不是数据改写操作,则上述操作类型判别电路可暂时不输出信号或者输出一个用于指示上述数据操作信号不为针对第一存储区域的数据改写信号的指示信号。然后,上述地址判别电路可获取新的数据操作信号,并重复上述判断操作。在本实施例中,通过数据操作信号指向的数据存储地址和数据操作信号对应的操作类型最终确定出该数据操作是否为针对第一存储区域的数据改写操作,过程简单,易于实现,且可保证判别结果的准确性。
可选的,当上述操作类型判别电路监测到上述数据操作信号对应的数据操作类型为数据改写时,可继续监测上述第一数据操作信号所指示的数据改写操作是否执行成功。具体的,数据操作判别电路可在确定出上述数据操作信号为针对第一存储区域的数据改写信号后,触发存储器向其反馈上述数据操作信号对应的响应信号。当操作类型判别电路监测到上述响应信号为响应成功信号时,可确定上述数据改写操作执行成功,即可在监测电路的输出端输出数据搬迁失败信号。当操作类型判别电路监测到上述响应信号为响应失败信号时,可确定上述数据改写操作执行失败,则无需输出数据搬迁失败信号。数据操作判别电路在确定数据改写操作执行成功的情况下才输出数据搬迁失败信号,可避免因数据改写失败造成的误判,可提升数据搬迁方法的效率和准确率。
可选的,当操作类型判别电路监测到上述数据操作信号对应的操作类型为数据改写(即上述数据操作信号为针对第一存储区域的数据改写信号)时,可向数据搬迁电路发送一个记录触发信号,以触发上述数据搬迁电路记录上述数据操作信号所指向的数据存储地址。然后,在上述数据搬迁电路将上述第一存储区域的数据均搬迁至第二存储区域后,上述数据搬迁电路可再次对上述操作信号所指示的数据存储地址上的数据重新进行数据搬迁操作。这里,需要说明的是,在整个数据搬迁过程中,可能会出现多个针对于第一存储区域的数据改写信号。操作类型判别电路在监测到这些数据改写信号后,均会触发数据搬迁电路记录这些数据改写信号所指向的多个数据存储地址,并在当前次数据搬迁操作完成后,对上述多个数据存储地址上的数据重新进行数据搬迁操作。可选的,在有多个针对第一存储区域的数据改写信号的情况下,数据搬迁电路在完成当前次数据搬迁操作后,也可先判断其记录的针对第一存储区域的数据改写信号所指向数据存储地址的个数。当该个数小于或等于预设次数阈值时,数据搬迁电路可对这些数据存储地址上的数据重新进行数据搬迁。当该个数大于预设次数阈值时,数据搬迁电路则可对第一存储区域的所有数据重新进行数据搬迁操作。记录存在数据改写操作的数据存储地址,在将上述第一存储区域的数据均搬迁至第二存储区域后再对存在数据改写操作的数据存储地址上的数据重新进行数据搬迁操作,可使得数据搬迁电路无需对不存在数据改写操作的数据存储地址上的数据重复进行数据搬迁操作,可提升数据搬迁过程的效率。
可选的,当上述操作类型判别电路监测到上述数据操作信号为针对第一存储区域的数据改写信号时,可通过与其与数据搬迁电路相连接的一端向上述数据搬迁电路发送数据搬迁停止信号,以触发所述数据搬迁电路停止数据搬迁。例如,结合上文所述的数据搬迁示例,当数据搬迁电路将数据a3由第一存储区域搬迁至第二存储区域时,若操作类型判别电路监测到针对第一存储区域的数据改写信号,则可向数据搬迁电路发送一个数据搬迁停止信号,以触发数据搬迁电路停止数据搬迁操作。这样,数据搬迁电路将不会继续对数据a4和a5进行数据搬迁操作,可以减少无效的数据搬迁操作,可提升基于该存储控制器的数据搬迁方法的搬迁效率。
可选的,当上述操作类型判别电路监测到所述数据操作信号对应的操作类型为数据改写时,可在上述数据搬迁电路将第一存储区域的数据均搬迁至第二存储区域之后,通过与数据搬迁电路相连接的一端向上述数据搬迁电路发送数据搬迁停止信号,以触发所述数据搬迁电路停止将第一存储区域的数据搬迁至第二存储区域。
在一些可行的实施方式中,若上述数据搬迁电路将上述第一存储区域内的数据均搬迁至上述第二存储区域且上述数据操作判别电路未监测到输入存储器的数据操作信号中包括针对上述第一存储区域的数据改写操作信号,则在上述监测电路的输出端输出数据搬迁成功信号。上述数据搬迁电路在监测到上述数据搬迁成功信号后,可停止针对第一存储区域的数据搬迁操作。
可选的,请一并参见图4,图4是本申请实施例提供的存储控制器又一结构示意图。由图4可知,该存储控制器还包括地址切换电路。上述地址切换电路一端与上述数据操作判别电路的输出端相连接,地址切换电路另一端与存储器的一端相连接。在上述数据操作判别电路的输出端输出数据搬迁成功信号后,上述地址切换电路立即将当前时刻针对上述第一存储区域的数据操作信号所指向的数据存储地址由上述第一存储区域的存储地址切换成上述第二存储区域中相应的存储地址。并且,在数据搬迁完成后,直至数据搬迁电路将第二存储区域的数据恢复至第一存储区域之前,只要输入存储器的数据操作信号中包括针对第一存储区域的数据操作信号,上述地址切换电路均可将针对第一存储区域的数据操作信号所指向的数据存储地址由第一存储区域切换至第二存储区域。这样,可使得数据搬迁成功后,针对于第一存储区域的一个或者多个数据操作指令可准确的从第二存储区域中获取其需要操作的数据。在确定数据搬迁成功后,通过地址切换电路进行地址切换,可避免依靠软件进行地址切换带来的时延,可提升基于上述存储控制器的数据搬迁方法的效率。
需要说明的是,实际应用中,本申请实施例所叙述的存储控制器具体可应用于对存储器具备高性能要求的实施场景中。如用户设备(如手机、平板电脑等)、网络设备(如基站服务器等)或者核心网设备(如核心路由器、核心服务器等)中的存储器均具备较高的性能要求,本申请实施例所叙述的存储控制器即可对这些设备中的存储器进行访问控制。
在本申请实施例中,在数据搬迁电路将存储器的第一存储区域的数据搬迁至第二存储区域的过程中,通过数据操作判别电路对输入到存储器中的数据操作信号进行实时的监控,以及时发现数据搬迁失败这一情况,从而减少了因数据搬迁失败造成的无效数据搬迁操作,提升了数据搬迁方法的效率、准确率及适用性。
实施例二
请参见图5,图5是本申请实施例提供的一种数据搬迁监测方法的流程示意图。该数据搬迁监测方法适用于存储器的数据搬迁过程。在本申请实施例中,上述存储器包括第一存储区域和第二存储区域。本申请实施例提供的数据搬迁监测方法具体可由包含实施例一所描述的存储控制器的监测设备实现。为方便理解,本申请实施例中将以监测设备为执行主体进行描述。需要说明的是,在本申请实施例中,监测设备从启动数据搬迁操作直至确定出数据搬迁成功或者失败,为一次完整的数据搬迁操作。本实施例中所描述的针对存储器的数据操作具体指代的是任意时刻存储器可接收到的用于请求对存储器内的数据进行处理的操作指令。上述监测方法包括以下步骤:
S101,在将第一存储区域的数据搬迁至第二存储区域的过程中,监测针对存储器的数据操作。
在一些可行的实施方式中,监测设备在将第一存储区域内的所有数据搬迁至第二存储区域的过程中,可在存储器的数据汇聚节点处对针对上述存储器的数据操作进行监控。这里,上述存储区的数据汇聚节点具体可为存储器的存储控制器。上述针对存储器的数据操作为用于实现对存储器内存储的数据进行读出、写入、读清等处理的操作
可选的,具体实现中,监测设备首先可获取到数据搬迁启动指令,并根据上述数据搬迁启动指令开启将第一存储区域的数据搬迁至第二存储区域的数据搬迁操作。这里,上述数据搬迁启动指令至少指示了第一存储区域的存储地址、第二存储区域的存储地址。上述第一存储区域和上述第二存储区域大小相同,并且第一存储区域中包括的存储单元和第二存储区域中包括的存储单元一一对应。例如,假设上述数据搬迁启动指令指示上述第一存储区域中包括5个存储单元,这5个存储单元的存储地址为分别为地址1、地址2、地址3、地址4、地址5。上述5个存储单元中存储有数据a1、a2、a3、a4和a5。上述第二存储区域中也包括5个存储单元,其地址分别为地址6、地址7、地址8、地址9、地址10。监测设备在获取到上述数据搬迁启动指令后,可向存储控制器发送第一搬迁指令,以指示存储控制器将上述地址1对应存储单元中存储数据a1搬迁至地址6对应的存储单元中。然后,监测设备可继续发送第二搬迁指令,以指示存储控制器将上述地址2对应存储单元中存储数据a2搬迁至地址7对应的存储单元中,依次类推,直至将第一存储区域的数据均搬迁至第二存储区域后,监测设备停止发送搬迁指令。
监测设备在进行上述数据搬迁操作的同时,可对针对存储器的数据操作进行实时的监测,以确定上述针对存储器的数据操作中是否为针对上述第一存储区域的改写操作。具体的,在上述数据搬迁过程中,在某一时刻上,监测设备可在存储器的数据汇聚节点处截取到一个请求对存储器进行数据操作的操作指令,然后监测设备可对上述操作指令进行解析和判断,进而确定出上述操作指令所请求的针对存储器的数据操作中是否为针对第一存储区域的改写操作。
下面以请求对存储器进行数据操作(为方便理解和区别,下文以第一数据操作代替描述)的操作指令A为例,对监测设备确定针对存储器的数据操作中是否为针对第一存储区域的改写操作的过程进行描述。监测设备在时刻t1上截取到操作指令A之后,可解析出操作指令A请求的第一数据操作所指向的数据存储地址,并判断上述第一数据操作所指向的数据存储地址是否包含于上述第一存储区域的存储地址。若监测设备确定出上述第一数据操作所指向的数据存储地址不包含于上述第一存储区域的存储地址,则可继续截取新的数据操作指令,并对新的操作指令重复执行上述判断过程。若监测设备确定出上述第一数据操作所指向的数据存储地址包含于上述第一存储区域的存储地址,则监测设备可提取出上述第一数据操作所对应的数据操作类型。例如,监测设备可对上述操作指令A进行解析以得到上述目标数据操作所对应的操作类型标识,再根据该操作类型标识确定出上述目标数据操作所对应的数据操作类型。这里,上述数据操作类型可包括读出操作、写入操作、读清操作等,此处不作限定。监测设备在确定出上述第一数据操作的数据操作类型后,可判断该数据操作类型是否为数据改写。这里,上述数据改写指代的是能够使得第一存储区域的数据发生变化的数据操作,如上述写入操作,读清操作等。若监测设备确定出上述第一数据操作对应的数据操作类型为数据改写,则可确定上述第一数据操作为针对上述第一存储区域的改写操作,即上述针对存储器的数据操作为针对第一存储区域的数据改写操作。若监测设备确定出上述第一数据操作不是改写操作,则监测设备可新的操作指令重复执行上述判断过程,并最终确定在数据搬迁过程汇总是否存在针对第一存储区域的数据改写操作。
在本实施例中,通过数据操作所指向的数据存储地址和数据操作对应的操作类型来判断针对上述存储器的数据操作中是否为针对上述第一存储区域的改写操作,可保证上述判断的结果的有效性,并且该方法易于实现,有助于提升数据搬迁监测方法的效率。
S102,当监测到针对存储器的数据操作为针对第一存储区域的改写操作时,确定数据搬迁失败。
在一些可行的实施方式中,若某一次搬迁完成后未搬迁之前的数据和搬迁之后的数据不一致,则说明本次数据搬迁存在错误。因此,当监测设备确定其截取到的针对存储器的数据操作为针对第一存储区域的改写操作,则说明在数据搬迁过程中第一存储区域的数据可能被更改,这就会导致在将第一存储区域的数据均搬迁至第二存储区域后第一存储区域的数据和第二存储区域的数据可能不一样,因此监测设备可确定本次数据搬迁失败。例如,结合步骤S101中数据搬迁过程的示例,若监测设备监测到在监测设备将地址3对应的存储单元中的a3搬迁至地址8对应的存储单元时接收到数据操作指令B,且该数据操作指令B请求向地址2对应的存储单元中写入数据b2,则当本次数据搬迁完成后,第一存储区域中存储的数据为a1,b2,a3,a4,a5,第二存储区域中存储的数据为a1,a2,a3,a4,a5。两个存储区域存储的数据不一致,因此,监测设备可在监测到上述数据操作指令B时,确定本次数据搬迁失败。
可选的,当监测设备监测到针对上述存储器的数据操作为针对第一存储区域的改写操作时,可继续判断该改写操作是否执行成功。例如,监测设备可判断该改写操作所指向的存储地址上的数据在该改写操作执行完成后是否被更改。若被更改,则说明该改写操作执行成功。若没有被更改,则说明该改写操作执行失败。若监测设备确定该针对上述第一存储区域的改写操作执行成功,则可确定数据搬迁失败。若监测设备确定该针对上述第一存储区域的改写操作失败,则继续对针对存储器的数据操作进行监控。在监测到有针对于第一存储区域的数据改写操作并且在确定改成成功的情况下,确定数据搬迁失败,可避免因数据改写未成功造成的误判,提升了数据搬迁监测方法的准确率。
可选的,当监测设备监测到针对上述存储器的数据操作为针对第一存储区域的改写操作时,可记录该数据操作所指向的数据存储地址。然后,监测设备在将上述第一存储区域的数据均搬迁至第二存储区域后,可再次对上述数据操作所指示的存储地址上的数据进行数据搬迁操作。这里,需要说明的是,在整个数据搬迁过程中,可能会出现多个针对于第一存储区域的数据改写操作。监测设备在监测到这些数据改写操作后,均会记录这些数据改写操作所指向的多个数据存储地址,并在当前次数据搬迁操作完成后,对上述多个数据存储地址重新进行数据搬迁操作。可选的,在有多个针对第一存储区域的数据改写操作的情况下,监测设备在完成当前次数据搬迁操作后,可先判断其记录的针对第一存储区域的数据改写操作所指向数据存储地址的个数。当监测设备确定该个数小于或等于预设次数阈值时,可重新对这些存储地址上的数据进行数据搬迁。当监测设备确定该个数大于预设次数阈值时,可重新对第一存储区域的所有数据进行数据搬迁操作。记录存在数据改写操作的数据存储地址,在将上述第一存储区域的数据均搬迁至第二存储区域后再对存在数据改写操作的数据存储地址重新进行数据搬迁操作,可使得监测设备无需对不存在数据改写操作的数据存储地址重复进行数据搬迁操作,可提升数据搬迁过程的效率。
可选的,当监测设备确定搬迁失败时,监测设备可停止本次数据搬迁操作。例如,结合上文的数据搬迁示例,当监测设备将数据a3由第一存储区域搬迁至第二存储区域时,若监测到有针对第一存储区域的改写操作,则监测设备可停止数据搬迁操作,即数据a4和a5的搬迁操作不会再被执行。这样可以减少无效的数据搬迁操作,可提升数据搬迁的效率。可选的,当监测设备确定数据搬迁失败时,也可不立即停止数据搬迁操作。监测设备在将第一存储区域内的所述数据均搬迁至第二存储区域后停止数据搬迁操作。
可选的,当监测设备确定搬迁失败后,可主动上报当前的数据搬迁状态为失败状态。这样可使得与监测设备相连接的其他器件能够及时的发现本次数据搬迁失败,避免了更多的无效操作,提升了数据搬迁的效率,同时也可提升数据搬迁过程的资源利用率。或者,当监测设备确定搬迁成功后,可主动上报当前的数据搬迁状态为成功状态。这样可使得与监测设备相连接的其他器件能够及时的发现本次数据搬迁成功,从而快速的作出响应,可提升数据搬迁过程的效率。
可选的,当监测设备确定本次数据搬迁失败时,可启动预设的定时器进行计时,当定时器的累积时间等于预设的时间阈值时,对计时器进行复位操作,并重新开始第二次数据搬迁操作。
在一些可行的实施方式中,若第一存储区域内的数据均搬迁至第二存储区域且未监测到针对第一存储区域的改写操作,则监测设备可确定数据搬迁成功。例如,结合上述数据搬迁示例,直至监测设备将数据a1,a2,a3,a4和a5均由第一存储区域搬迁至第二存储区域,监测设备都没有监测到有针对第一存储区域的数据改写操作,或者,没有监测到针对第一存储区域的执行成功的数据改写操作,则监测设备可确定本次数据搬迁成功。
可选的,当监测设备确定数据搬迁成功时,可将针对上述第一存储区域的数据操作所指向的数据存储地址由上述第一存储区域中的存储地址切换成上述第二存储区域中对应的存储地址。这里需要说明的是,这里所描述的针对第一存储区域的数据操作指代的是,在数据搬迁过程中以及数据搬迁成功后,监测设备在任意时间监测到的针对第一存储区域的数据操作指令所请求的数据操作。这样就可使得数据搬迁成功后,上述数据操作能准确的从第二存储区域中指示出其需要操作的数据。当监测设备确定数据搬迁成功时,立刻进行存储区域的地址映射,可减少根据数据搬迁状态使能地址映射带来的操作时延,提升了数据搬迁的效率,也保证了数据搬迁成功后针对第一存储区域的的数据操作能够得到正确的响应。
在一些可行的实施方式中,当监测设备确定本次数据搬迁成功时,可立刻停止对针对存储器的数据操作信号进行监测。然后在接收到的新的数据搬迁启动指令时,重新开启监测操作。通过上述步骤,可减少监测设备的能耗。
在一些可行的实施方式中,实施例一中所叙述的数据搬迁监测方法可应用于存储器内建自测(memory built-in self-test,MBIST)技术所涉及到的被测试存储区域的数据备份和恢复过程。可以理解到的是,上述数据备份和恢复过程都可视为一种数据搬迁过程。例如,监测设备可在MBIST技术所涉及的将被测试存储区域的数据备份到备份存储区域的过程中,监测针对被测试存储区域的数据操作。当监测设备监测到存在针对被测试存储区域的数据改写操作时,停止数据备份,并确定当前次数据备份失败。若直至被测试存储区域的数据均搬迁至备份存储区域,且监测设备未监测到存在针对被测试存储区域的数据改写操作,则可确定数据搬迁成功。同理,监测设备可在将备份存储区域的数据恢复至被测试存储区域的过程中重复执行上述监测操作。具体数据搬迁监测过程可参见上述步骤S101以及步骤S102中所描述的监测过程,此处便不再赘述。将上述数据搬迁监测方法应用于存储器内建自测技术中所涉及的被测试存储区域和备份区域之间的数据备份和数据恢复过程,可减少数据备份和数据恢复过程中因数据搬迁失败造成的无效数据搬迁操作,从而可提升MBIST技术的效率和可靠性。
在本申请实施例中,通过实时监测针对存储器的数据操作,从而可准确且及时的确定出因存在针对第一存储区域的数据改写操作而导致的数据搬迁失败,继而可减少由数据搬迁失败导致的无效的数据操作,可提升数据搬迁过程的效率、准确率及适用性。
请参见图6,图6是本申请实施例提供的一种电子设备的结构示意图。本申请实施例提供的电子设备包括处理器601、存储器602和总线系统603。其中,上述处理器601、存储器602通过总线系统603连接。
上述存储器602用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。存储器602包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmableread only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM)。图6中仅示出了一个存储器,当然,存储器也可以根据需要,设置为多个。
存储器602也可以是处理器601中的存储器,在此不做限制。
存储器602存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
上述处理器601控制电子设备的操作,处理器601可以是一个或多个中央处理器(central prooessing unit,CPU)。在处理器601是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
具体的应用中,电子设备的各个组件通过总线系统603耦合在一起,其中总线系统603除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图6中将各种总线都标为总线系统603。为便于表示,图6中仅是示意性画出。
本申请实施例揭示的数据搬迁监测方法,可以应用于处理器601中,或者由处理器601实现。处理器601可能是一种集成电路芯片,具有信号的处理能力。
本申请的实施例中提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当该指令在计算机上运行时,可实现上述实施例二中所描述的一种数据搬迁监测方法。
上述计算机可读存储介质可以是前述实施例二所述的监测设备的内部存储单元。上述计算机可读存储介质也可以是上述监测设备的外部存储设备,例如上述监测设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,上述计算机可读存储介质还可以既包括上述监测设备的内部存储单元也包括外部存储设备。上述计算机可读存储介质用于存储上述计算机程序以及上述监测设备所需的其他程序和数据。上述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (18)
1.一种存储控制器,其特征在于,所述存储控制器与存储器耦合,所述存储控制器包括数据搬迁电路和数据操作判别电路,所述存储器包括第一存储区域和第二存储区域,其中:
所述数据搬迁电路用于产生搬迁信号,所述搬迁信号用于将所述第一存储区域中的数据搬迁至所述第二存储区域;
在所述数据搬迁电路将所述第一存储区域中的所有数据搬迁至所述第二存储区域的数据搬迁过程中,所述数据操作判别电路用于接收并监测输入至所述存储器的数据操作信号,并在监测到所述数据操作信号为针对所述第一存储区域的数据改写信号时,输出数据搬迁失败信号,其中,所述数据改写信号为使得所述第一存储区域的数据发生变化的数据操作信号。
2.根据权利要求1所述的存储控制器,其特征在于,所述数据操作判别电路还用于在所述数据搬迁过程中未监测到所述针对所述第一存储区域的数据改写信号时,输出数据搬迁成功信号。
3.根据权利要求2所述的存储控制器,其特征在于,所述存储控制器还包括地址切换电路;
所述地址切换电路用于在监测到所述数据搬迁成功信号后,将针对所述第一存储区域的数据操作信号所指向的数据存储地址由所述第一存储区域的存储地址切换成所述第二存储区域中相应的存储地址。
4.根据权利要求1-3任一项所述的存储控制器,其特征在于,所述数据操作判别电路包括地址判别电路、操作类型判别电路,其中:
所述地址判别电路用于接收并提取出所述数据操作信号所指向的数据存储地址,确定所述数据存储地址是否为所述第一存储区域的存储地址;
所述操作类型判别电路用于当监测到所述地址判别电路确定所述数据存储地址为所述第一存储区域的存储地址时,提取所述数据操作信号对应的数据操作类型;
所述操作类型判别电路还用于当所述数据操作类型为数据改写时,确定所述数据操作信号为针对所述第一存储区域的数据改写信号并输出数据搬迁失败信号。
5.根据权利要求4所述的存储控制器,其特征在于,所述操作类型判别电路具体用于:
当监测到所述数据操作信号为针对所述第一存储区域的数据改写信号时,若接收到所述数据操作信号对应的响应成功信号,则输出数据搬迁失败信号,其中,所述响应成功信号用于指示所述数据操作信号指向的数据存储地址上的数据被改写完成。
6.根据权利要求4所述的存储控制器,其特征在于,所述操作类型判别电路还用于:
当确定所述数据操作信号为针对所述第一存储区域的数据改写信号时,触发所述数据搬迁电路记录所述数据操作信号所指向的数据存储地址;
所述数据搬迁电路还用于:
在将所述第一存储区域的数据均搬迁至第二存储区域后,再次将所述数据操作信号所指向的数据存储地址上的数据由所述第一存储区域搬迁至所述第二存储区域。
7.根据权利要求4所述的存储控制器,其特征在于,所述操作类型判别电路还用于:
当确定所述数据操作信号为针对所述第一存储区域的数据改写信号时,触发所述数据搬迁电路停止数据搬迁。
8.一种数据搬迁监测方法,其特征在于,所述方法包括:
在将存储器的第一存储区域的所有数据搬迁至所述存储器的第二存储区域的过程中,监测针对所述存储器的数据操作;
当监测到所述数据操作为针对所述第一存储区域的数据改写操作时,确定数据搬迁失败,其中,所述数据改写操作为使得第一存储区域的数据发生变化的数据操作。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
若所述第一存储区域内的数据均搬迁至所述第二存储区域且未监测所述针对所述第一存储区域的数据改写操作,则确定数据搬迁成功。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
当确定数据搬迁成功时,将针对所述第一存储区域的数据操作所指向的数据存储地址由所述第一存储区域中的存储地址切换成所述第二存储区域中对应的存储地址。
11.根据权利要求8-10任一项所述的方法,其特征在于,所述监测针对所述存储器的数据操作包括:
获取针对所述存储器的数据操作所指向的数据存储地址;
当所述数据操作所指向的数据存储地址包含于所述第一存储区域的存储地址时,获取所述数据操作对应的操作类型;
若所述数据操作对应的操作类型为数据改写, 则确定所述数据操作为针对所述第一存储区域的数据改写操作。
12.根据权利要求8-10任一项所述的方法,其特征在于,所述确定数据搬迁失败包括:
若确定所述针对所述第一存储区域的改写操作执行成功,则确定数据搬迁失败。
13.根据权利要求8-10任一项所述的方法,其特征在于,所述方法还包括:
当确定数据搬迁失败时,停止数据搬迁。
14.根据权利要求8-10任一项所述的方法,其特征在于,所述方法还包括:
当确定所述数据操作为针对所述第一存储区域的数据改写操作时,记录所述数据操作所指向的存储地址;
在所述第一存储区域内的数据均搬迁至所述第二存储区域后,再次将所述数据操作所指向的存储地址上的数据由所述第一存储区域搬迁至所述第二存储区域。
15.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中存储的计算机程序,以使得所述电子设备执行如权利要求8-14中任一项所述的数据搬迁监测方法。
16.一种计算机可读存储介质,用于存储指令,当所述指令被执行时,使如权利要求8-14中任一项所述的数据搬迁监测方法被实现。
17.一种包含程序指令的计算机程序产品,当所述程序指令在计算机上运行时,使得所述计算机执行如权利要求8-14中任一项所述的数据搬迁监测方法。
18.一种芯片系统,其特征在于,包括:处理器;
所述处理器用于运行代码指令以执行如权利要求8-14中的任一项所述的数据搬迁监测方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/074278 WO2020155060A1 (zh) | 2019-01-31 | 2019-01-31 | 一种存储控制器和数据搬迁监测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113330411A CN113330411A (zh) | 2021-08-31 |
CN113330411B true CN113330411B (zh) | 2023-09-01 |
Family
ID=71840836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980089806.3A Active CN113330411B (zh) | 2019-01-31 | 2019-01-31 | 一种存储控制器和数据搬迁监测方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11809730B2 (zh) |
EP (1) | EP3910462A4 (zh) |
CN (1) | CN113330411B (zh) |
WO (1) | WO2020155060A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6895485B1 (en) * | 2000-12-07 | 2005-05-17 | Lsi Logic Corporation | Configuring and monitoring data volumes in a consolidated storage array using one storage array to configure the other storage arrays |
CN1624670A (zh) * | 2003-12-03 | 2005-06-08 | 华为技术有限公司 | 一种本地数据迁移的方法 |
CN105093526A (zh) * | 2014-05-22 | 2015-11-25 | Lg电子株式会社 | 眼镜式终端及其控制方法 |
CN107741811A (zh) * | 2017-09-20 | 2018-02-27 | 努比亚技术有限公司 | 移动终端维护方法、装置及计算机可读存储介质 |
CN108008915A (zh) * | 2016-10-27 | 2018-05-08 | 爱思开海力士有限公司 | 用于控制存储器装置的设备和方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4757165B2 (ja) * | 2006-10-04 | 2011-08-24 | 株式会社日立製作所 | 計算機システム、データ移行監視方法及びデータ移行監視プログラム |
US10031669B2 (en) * | 2009-12-29 | 2018-07-24 | International Business Machines Corporation | Scheduling migration related traffic to be non-disruptive and performant |
CN104881443B (zh) * | 2015-05-14 | 2018-11-27 | 新浪网技术(中国)有限公司 | 一种在数据库间迁移数据的方法和系统 |
US9848042B1 (en) * | 2015-05-29 | 2017-12-19 | Datadirect Networks, Inc. | System and method for data migration between high performance computing architectures and de-clustered RAID data storage system with automatic data redistribution |
JP2019049818A (ja) * | 2017-09-08 | 2019-03-28 | 富士通株式会社 | 情報処理装置、情報処理システム、情報処理システムの制御方法及びライブマイグレーション制御プログラム |
US10459662B1 (en) * | 2017-09-27 | 2019-10-29 | Amazon Technologies, Inc. | Write failure handling for a memory controller to non-volatile memory |
US11724280B2 (en) * | 2021-01-19 | 2023-08-15 | Tricord Solutions, Inc. | Powered caulking apparatus |
-
2019
- 2019-01-31 CN CN201980089806.3A patent/CN113330411B/zh active Active
- 2019-01-31 WO PCT/CN2019/074278 patent/WO2020155060A1/zh unknown
- 2019-01-31 EP EP19913613.6A patent/EP3910462A4/en active Pending
-
2021
- 2021-07-30 US US17/389,461 patent/US11809730B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6895485B1 (en) * | 2000-12-07 | 2005-05-17 | Lsi Logic Corporation | Configuring and monitoring data volumes in a consolidated storage array using one storage array to configure the other storage arrays |
CN1624670A (zh) * | 2003-12-03 | 2005-06-08 | 华为技术有限公司 | 一种本地数据迁移的方法 |
CN105093526A (zh) * | 2014-05-22 | 2015-11-25 | Lg电子株式会社 | 眼镜式终端及其控制方法 |
CN108008915A (zh) * | 2016-10-27 | 2018-05-08 | 爱思开海力士有限公司 | 用于控制存储器装置的设备和方法 |
CN107741811A (zh) * | 2017-09-20 | 2018-02-27 | 努比亚技术有限公司 | 移动终端维护方法、装置及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP3910462A1 (en) | 2021-11-17 |
US11809730B2 (en) | 2023-11-07 |
WO2020155060A1 (zh) | 2020-08-06 |
EP3910462A4 (en) | 2022-01-12 |
CN113330411A (zh) | 2021-08-31 |
US20210357141A1 (en) | 2021-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI553650B (zh) | 以記憶體控制器來處理資料錯誤事件之方法、設備及系統 | |
US9983812B1 (en) | Automated node failure detection in an active/hot-standby storage cluster | |
US8924785B2 (en) | Power shutdown prediction for non-volatile storage devices | |
CN109614276B (zh) | 故障处理方法、装置、分布式存储系统和存储介质 | |
CN109656895B (zh) | 分布式存储系统、数据写入方法、装置和存储介质 | |
US20060212754A1 (en) | Multiprocessor system | |
US20130282939A1 (en) | Method and apparatuses for monitoring system bus | |
CN113672415B (zh) | 一种磁盘故障处理方法、装置、设备及存储介质 | |
CN114868117A (zh) | 通过控制总线进行的对等存储设备消息传送 | |
KR20170107210A (ko) | 반도체 메모리 장치의 컨트롤러 및 이의 동작 방법 | |
CN106030544B (zh) | 计算机设备内存的检测方法和计算机设备 | |
US9772892B2 (en) | Recovery method for portable touch-control device and portable touch-control device using the same | |
CN114218037A (zh) | 一种硬盘管理方法、装置、设备及机器可读存储介质 | |
CN114610522A (zh) | 操作存储设备和主机设备的方法以及存储设备 | |
CN107391036B (zh) | 一种存储的vpd信息访问方法及系统 | |
CN113330411B (zh) | 一种存储控制器和数据搬迁监测方法 | |
CN114884836A (zh) | 一种虚拟机高可用方法、装置及介质 | |
CN103793283A (zh) | 一种终端故障处理方法及相关装置 | |
CN114443383A (zh) | 一种多路径对象链路状态检测方法、装置及存储介质 | |
CN108037942B (zh) | 一种嵌入式设备的自适应数据恢复与更新方法及装置 | |
CN111858136A (zh) | 固态硬盘异常数据检测方法、系统、电子设备及存储介质 | |
US7568121B2 (en) | Recovery from failure in data storage systems | |
KR20140101626A (ko) | 솔리드 스테이트 드라이브의 데이터 처리 방법 | |
CN116578446B (zh) | 虚拟机备份方法、装置、系统、电子设备及存储介质 | |
CN117950921B (zh) | 内存故障处理方法、内存扩展控制设备、电子设备及介质 |
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 |