CN105204774A - 一种数据处理方法及电子设备 - Google Patents

一种数据处理方法及电子设备 Download PDF

Info

Publication number
CN105204774A
CN105204774A CN201410283472.2A CN201410283472A CN105204774A CN 105204774 A CN105204774 A CN 105204774A CN 201410283472 A CN201410283472 A CN 201410283472A CN 105204774 A CN105204774 A CN 105204774A
Authority
CN
China
Prior art keywords
data
address
write
address set
writing
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.)
Granted
Application number
CN201410283472.2A
Other languages
English (en)
Other versions
CN105204774B (zh
Inventor
王海洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201410283472.2A priority Critical patent/CN105204774B/zh
Priority to US14/586,493 priority patent/US9747205B2/en
Publication of CN105204774A publication Critical patent/CN105204774A/zh
Application granted granted Critical
Publication of CN105204774B publication Critical patent/CN105204774B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Systems (AREA)

Abstract

本申请公开了一种数据处理方法及电子设备,所述电子设备包括存储器,所述方法包括:为所述存储器中存储的同一数据集合分配不同的地址集合,使得所述数据集合分别对应第一地址集合与第二地址集合,所述第一地址集合与所述第二地址集合之间具有预设地址偏移量,所述第一地址集合对应第一数据访问模式,所述第二地址集合对应第二数据访问模式;当接收到数据写入命令时,以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合;当接收到数据读取命令时,以所述第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。

Description

一种数据处理方法及电子设备
技术领域
本申请涉及数据处理技术领域,特别涉及一种数据处理方法及电子设备。
背景技术
在硬件设计中通常需要数据交换中介来实现不同类型对象之间的数据交互过程,硬件FIFO通常作为数据交互中介为软件和硬件共同使用进行数据读写。例如,软件将数据写入FIFO,硬件自动调整写指针;硬件在FIFO非空时,从FIFO中读出数据并调整读指针;硬件可以根据FIFO的空满状态或读写情况,来产生软件需要的中断。
但是,现有传统FIFO中,其被写入的数据通常会超过硬件的总线位宽,使得软件在写入数据时通常需要执行多次写动作,多次调整写指针;而软件在收到中断之后需要进行回读FIFO中数据的操作时,由于当前的指针已经发生跳转,由此需要对指正重新调整,在完成回读操作之后,再次重新调整指针,进而带来读写指针的多次变动,增加FIFO读写的出错率。
发明内容
本申请的目的在于提供一种数据处理方法及电子设备,用以解决现有技术中软件对FIFO进行回读操作时,出现读写指针的多次变动,增加FIFO读写出错率的技术问题。
本申请提供了一种数据处理方法,应用于电子设备,所述电子设备包括存储器,所述方法包括:
为所述存储器中存储的同一数据集合分配不同的地址集合,使得所述数据集合分别对应第一地址集合与第二地址集合,所述第一地址集合与所述第二地址集合之间具有预设地址偏移量,所述第一地址集合对应第一数据访问模式,所述第二地址集合对应第二数据访问模式;
当接收到数据写入命令时,以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合;
当接收到数据读取命令时,以所述第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。
上述方法,优选的,所述以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合,包括:
在所述数据写入命令对应的数据的位宽小于或等于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据写入所述第一地址集合中第一写指针指向地址的高位地址,更新所述第一写指针;
在所述数据写入命令对应的数据的位宽大于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据由所述第一地址集合中第一写指针指向地址的低位地址开始写入,在所述第一写指针指向地址的高位地址被写到时更新所述第一写指针。
上述方法,优选的,所述以所述第二数据访问模式在所述第二数据地址集合中读取与所述数据读取命令相对应的数据,包括:
提取所述数据读取命令中的第一数据地址;
依据所述地址偏移量,获取与所述第一数据地址相对应的第二数据地址;
在所述第二地址集合中读取所述第二数据地址所指向的数据。
上述方法,优选的,依据所述地址偏移量,获取与所述第一数据地址相对应的第二数据地址,包括:
对所述第一数据地址及所述地址偏移量进行加和计算,得到所述第二地址集合中与所述第一数据地址相对应的第二数据地址。
上述方法,优选的,在以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合之后,所述方法还包括:
确定所述第一地址集合中写入数据的第一写入地址;
依据所述地址偏移量,获取与所述第一写入地址相对应的第二写入地址;
在所述第二地址集合中,将所述数据写入命令对应的数据写入所述第二写入地址。
本申请还提供了一种电子设备,所述电子设备包括存储器,所述电子设备还包括:
数据地址分配单元,用于为所述存储器中存储的同一数据集合分配不同的地址集合,使得所述数据集合分别对应第一地址集合与第二地址集合,所述第一地址集合与所述第二地址集合之间具有预设地址偏移量,所述第一地址集合对应第一数据访问模式,所述第二地址集合对应第二数据访问模式;
数据写入单元,用于当接收到数据写入命令时,以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合;
数据读取单元,用于当接收到数据读取命令时,以所述第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。
上述电子设备,优选的,所述数据写入单元包括:
高位写入子单元,用于在所述数据写入命令对应的数据的位宽小于或等于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据写入所述第一地址集合中第一写指针指向地址的高位地址,更新第一写指针;
低位写入子单元,用于在所述数据写入命令对应的数据的位宽大于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据由所述第一地址集合中第一写指针指向地址的低位地址开始写入,在所述第一写指针指向地址的高位地址被写到时更新所述第一写指针。
上述电子设备,优选的,所述数据读取单元包括:
第一地址提取子单元,用于提取所述数据读取命令中的第一数据地址;
第二地址获取子单元,用于依据所述地址偏移量,获取与所述第一数据地址相对应的第二数据地址;
数据读取子单元,用于在所述第二地址集合中读取所述第二数据地址所指向的数据。
上述电子设备,优选的,所述第二地址获取子单元包括:
偏移量加和模块,用于对所述第一数据地址及所述地址偏移量进行加和计算,得到所述第二地址集合中与所述第一数据地址相对应的第二数据地址。
上述电子设备,优选的,还包括:
第一地址确定单元,用于在所述数据写入单元将与所述数据写入命令对应的数据写入所述第一地址集合之后,确定所述第一地址集合中写入数据的第一写入地址;
第二地址获取单元,用于依据所述地址偏移量,获取与所述第一写入地址相对应的第二写入地址;
地址集合写入单元,用于在所述第二地址集合中,将所述数据写入命令对应的数据写入所述第二写入地址。
由上述方案可知,本申请提供的一种数据处理方法及电子设备,通过对存储器中的同一数据集合设置不同的地址集合,以使得将写入数据与读取数据分开,即在第一地址集合中进行写入操作,在第二地址集合中进行读取操作,避免回读操作时,出现读写指针多次变动的情况,减小数据读取出错率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种数据处理方法实施例一的流程图;
图2为本申请提供的一种数据处理方法实施例二的部分流程图;
图3及图4分别为本申请实施例二的应用示例图;
图5为本申请提供的一种数据处理方法实施例三的部分流程图;
图6为本申请提供的一种数据处理方法实施例四的部分流程图;
图7为本申请提供的一种电子设备实施例五的结构示意图;
图8为本申请提供的一种电子设备实施例六的部分结构示意图;
图9为本申请提供的一种电子设备实施例七的部分结构示意图;
图10为本申请实施例七的另一部分结构示意图;
图11为本申请提供的一种电子设备实施例八的部分结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,为本申请提供的一种数据处理方法实施例一的流程图,所述方法应用于电子设备中,所述电子设备可以为会利用数据交互中介进行软硬件之间的数据传输的pad、笔记本或电脑等,所述电子设备中包括有存储器,该存储器即为作为数据交换中介为所述电子设备中软硬件之间的数据传输提供服务。其中,在本实施例中,所述方法可以包括以下步骤:
步骤101:为所述存储器中存储的同一数据集合分配不同的地址集合,使得所述数据集合分别对应第一地址集合与第二地址集合。
其中,所述第一地址集合与所述第二地址集合之间具有预设地址偏移量,也就是说,所述第一地址集合中的每个第一地址各自对应的数据在第二地址集合中的相应第二地址与其对应第一地址之间具有所述地址偏移量,还可以理解为:所述数据集合中的每个数据在所述第一地址集合及所述第二地址集合中各自对应的两个地址之间具有所述地址偏移量,所述第一地址集合与所述第二地址集合的基地址不同,但其地址长度一致,所指向的数据一致。
需要说明的是,所述第一地址集合对应第一数据访问模式,所述第二地址集合对应第二数据访问模式。
步骤102:当接收到数据写入命令时,以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合。
其中,所述步骤102可以理解为:在所述电子设备中,存在软件需要进行数据写入时,生成数据写入命令,所述电子设备对该数据写入命令进行响应,以第一数据访问模式将与所述数据写入命令相对应的数据写入到第一地址集合中相应的第一数据地址中。
步骤103:当接收到数据读取命令时,以所述第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。
其中,所述步骤103可以理解为:在所述电子设备中,存在硬件需要进行数据读取时,生成数据读取命令,所述电子设备对该数据读取命令进行响应,以第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。
也就是说,在所述电子设备中对所述数据集合进行数据写入时,依据所述第一地址集合中数据集合对应的地址进行数据写入,在所述电子设备中对所述数据集合进行数据读取时,依据所述第二地址集合中数据集合对应的地址进行数据读取,即为:在所述电子设备中,软硬件进行的数据读取与写入为分开操作,第二地址集合中的读写指针与所述第一地址集合中的读写指针无关联,以第一地址集合对数据集合进行写入数据操作,对数据集合进行数据读取操作时以第二地址集合进行,无需对完成写操作的写指针进行变动。
由上述方案可知,本申请提供的一种数据处理方法实施例一,通过对存储器中的同一数据集合设置不同的地址集合,以使得将写入数据与读取数据分开,即在第一地址集合中进行写入操作,在第二地址集合中进行读取操作,避免回读操作时,出现读写指针多次变动的情况,减小数据读取出错率。
上述实现方案中,所述第一数据访问模式可以为先进先出FIFO模式,也就是说,在所述第一地址集合中,写入或读取数据时受数据的被存储的先后顺序限制,先存储的数据先被读取,后存储的数据后被读取。参考图2,为本申请提供的一种数据处理方法实施例二中所述步骤102的流程图,其中,所述步骤102具体可以包括以下步骤:
步骤121:判断所述数据写入命令对应的数据的位宽是否小于或等于所述电子设备总线的数据位宽,如果是,执行步骤122,否则,执行步骤123。
其中,以所述数据总线的数据位宽为32bite(1个word),所述存储器的位宽为2个word(64bite)为例。
步骤122:将所述数据写入命令相对应的数据写入所述第一地址集合中第一写指针指向地址的高位地址,执行步骤124。
步骤124:更新所述第一写指针。
如图3中所述第一地址集合及如图4中第二地址集合为例,所述第一地址集合中的各个地址为第二地址集合中对应地址偏移为0x0010000,在所述第一地址集合中,数据位宽为2个word,所述第一写指针writepointer指向相对该第一地址集合的基地址偏移量offset分别为0x04和0s00的当前地址word1及word0,在写入位宽小于或等于所述存储器的数据位宽的数据时,将该数据写入到该第一写指针的高位地址,之后,根据所述FIFO模式,调整所述第一写指针指向被写入地址的下一个地址。
步骤123:将所述数据写入命令对应的数据由所述第一地址集合中第一写指针指向地址的低位地址开始写入。
其中,在所述第一写指针指向地址的高位地址被写到时更新所述第一写指针。
需要说明的是,所述步骤123是指,只要第一写指针的高位地址被写到时才会更新第一写指针。也就是说,在进行数据写入操作时,每次写入数据时只有写指针的高位地址被写入时才会更新写指针,不管低位地址被写多少次,只要高位地址不被写,写指针都不会更新,由此不必将指针指向地址写完整,即可调整写指针,使得指针的调整更加灵活,增加电子设备系统的鲁棒性。
其中,所述第二数据访问模式可以为记忆memory模式,也就是说,在所述第二地址集合中,对数据进行读取或写入时,不受已存储的数据的地址顺序限制。参考图5,为本申请提供的一种数据处理方法实施例三中所述步骤103的流程图,其中,所述步骤103可以通过以下步骤实现:
步骤131:提取所述数据读取命令中的第一数据地址。
其中,在硬件进行数据读取时,生成的数据读取命令中待读取的数据的地址为第一地址集合中的第一数据地址。
步骤132:依据所述地址偏移量,获取与所述第一数据地址相对应的地址数据地址。
在本实施例中,进行数据读取时,需要在第二地址集合中进行数据读取,因此,在所述步骤132中需要利用所述地址偏移量首先获取到第二地址集合中待读取数据对应的地址。
具体的,上文中可知,所述第一地址集合为所述第二地址集合进行偏移所述地址偏移量得到的地址。所述步骤132可以通过以下方式实现:
对所述第一数据地址及所述地址偏移量进行加和计算,得到所述第二地址集合中与所述第一数据地址相对应的第二数据地址。
步骤133:在所述第二地址集合中读取所述第二数据地址所指向的数据。
在上文中可知,所述第一地址集合与所述第二地址集合所指向的数据一致,因此,在所述第一地址集合对应的数据被增加写入之后,需要对第二地址集合对应的数据进行同步。参考图6,为本申请提供的一种数据处理方法实施例四的部分流程图,其中,在所述步骤102之后,所述方法还可以包括以下步骤:
步骤104:确定所述第一地址集合中写入数据的第一写入地址。
其中,所述第一写入地址可以理解为第一地址集合中被写入数据之前第一写指针所指向的地址,该地址即为写入数据的地址。
步骤105:依据所述地址偏移量,获取与所述第一写入地址相对应的第二写入地址。
步骤106:在所述第二地址集合中,将所述数据写入命令对应的数据写入所述第二写入地址。
其中,所述数据写入命令对应的数据即为所述第一地址集合中所述第一写入地址所对应的数据,因此,经过所述步骤106之后,所述第一地址集合与所述第二地址集合各自对应的数据相一致,实现数据同步。
参考图7,为本申请提供的一种电子设备实施例五的结构示意图,其中,所述电子设备可以为会利用数据交互中介进行软硬件之间的数据传输的pad、笔记本或电脑等,所述电子设备中包括有存储器,该存储器即为作为数据交换中介为所述电子设备中软硬件之间的数据传输提供服务。其中,在本实施例中,所述电子设备还可以包括:
数据地址分配单元701,用于为所述存储器中存储的同一数据集合分配不同的地址集合,使得所述数据集合分别对应第一地址集合与第二地址集合。
其中,所述第一地址集合与所述第二地址集合之间具有预设地址偏移量,也就是说,所述第一地址集合中的每个第一地址各自对应的数据在第二地址集合中的相应第二地址与其对应第一地址之间具有所述地址偏移量,还可以理解为:所述数据集合中的每个数据在所述第一地址集合及所述第二地址集合中各自对应的两个地址之间具有所述地址偏移量,所述第一地址集合与所述第二地址集合的基地址不同,但其地址长度一致,所指向的数据一致。
需要说明的是,所述第一地址集合对应第一数据访问模式,所述第二地址集合对应第二数据访问模式。
数据写入单元702,用于当接收到数据写入命令时,以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合。
其中,所述数据写入单元702可以理解为:在所述电子设备中,存在软件需要进行数据写入时,生成数据写入命令,所述电子设备对该数据写入命令进行响应,以第一数据访问模式将与所述数据写入命令相对应的数据写入到第一地址集合中相应的第一数据地址中。
数据读取单元703,用于当接收到数据读取命令时,以所述第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。
其中,所述数据读取单元703可以理解为:在所述电子设备中,存在硬件需要进行数据读取时,生成数据读取命令,所述电子设备对该数据读取命令进行响应,以第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。
也就是说,所述数据写入单元702在所述电子设备中对所述数据集合进行数据写入时,依据所述第一地址集合中数据集合对应的地址进行数据写入,所述数据读取单元703在所述电子设备中对所述数据集合进行数据读取时,依据所述第二地址集合中数据集合对应的地址进行数据读取,即为:在所述电子设备中,软硬件进行的数据读取与写入为分开操作,第二地址集合中的读写指针与所述第一地址集合中的读写指针无关联,以第一地址集合对数据集合进行写入数据操作,对数据集合进行数据读取操作时以第二地址集合进行,无需对完成写操作的写指针进行变动。
由上述方案可知,本申请提供的一种电子设备实施例五,通过对存储器中的同一数据集合设置不同的地址集合,以使得将写入数据与读取数据分开,即在第一地址集合中进行写入操作,在第二地址集合中进行读取操作,避免回读操作时,出现读写指针多次变动的情况,减小数据读取出错率。
上述实现方案中,所述第一数据访问模式可以为先进先出FIFO模式,也就是说,在所述第一地址集合中,写入或读取数据时受数据的被存储的先后顺序限制,先存储的数据先被读取,后存储的数据后被读取。参考图8,为本申请提供的一种电子设备实施例六中所述数据写入单元702的结构示意图,其中,所述数据写入单元702可以包括以下结构:
高位写入子单元721,用于在所述数据写入命令对应的数据的位宽小于或等于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据写入所述第一地址集合中第一写指针指向地址的高位地址,更新第一写指针。
其中,在本申请实施例中,以所述数据总线的数据位宽为32bite(1个word),所述存储器的位宽为2个word(64bite)为例。
如图3中所述第一地址集合及如图4中第二地址集合为例,所述第一地址集合中的各个地址为第二地址集合中对应地址偏移为0x0010000,在所述第一地址集合中,数据位宽为2个word,所述第一写指针writepointer指向相对该第一地址集合的基地址偏移量offset分别为0x04和0s00的当前地址word1及word0,在写入位宽小于或等于所述存储器的数据位宽的数据时,所述高位写入子单元721将该数据写入到该第一写指针的高位地址,之后,根据所述FIFO模式,调整所述第一写指针指向被写入地址的下一个地址。
低位写入子单元722,用于在所述数据写入命令对应的数据的位宽大于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据由所述第一地址集合中第一写指针指向地址的低位地址开始写入。
其中,在所述第一写指针指向地址的高位地址被写到时更新所述第一写指针。
需要说明的是,所述低位写入子单元722是指,只要第一写指针的高位地址被写到时才会更新第一写指针。也就是说,在进行数据写入操作时,每次写入数据时只有写指针的高位地址被写入时才会更新写指针,不管低位地址被写多少次,只要高位地址不被写,写指针都不会更新,由此不必将指针指向地址写完整,即可调整写指针,使得指针的调整更加灵活,增加电子设备系统的鲁棒性。
其中,所述第二数据访问模式可以为记忆memory模式,也就是说,在所述第二地址集合中,对数据进行读取或写入时,不受已存储的数据的地址顺序限制。参考图9,为本申请提供的一种电子设备实施例七中所述数据读取单元703的结构示意图,其中,所述数据读取单元703可以包括以下结构:
第一地址提取子单元731,用于提取所述数据读取命令中的第一数据地址。
其中,在硬件进行数据读取时,生成的数据读取命令中待读取的数据的地址为第一地址集合中的第一数据地址。
第二地址获取子单元732,用于依据所述地址偏移量,获取与所述第一数据地址相对应的第二数据地址;
在本实施例中,进行数据读取时,需要在第二地址集合中进行数据读取,因此,在需要利用所述地址偏移量首先获取到第二地址集合中待读取数据对应的地址。
参考图10,为本申请实施例中所述第二地址获取子单元732的实现结构示意图,其中,所述第二地址获取子单元732可以包括以下结构:
偏移量加和模块1001,用于对所述第一数据地址及所述地址偏移量进行加和计算,得到所述第二地址集合中与所述第一数据地址相对应的第二数据地址。
数据读取子单元733,用于在所述第二地址集合中读取所述第二数据地址所指向的数据。
在上文中可知,所述第一地址集合与所述第二地址集合所指向的数据一致,因此,在所述第一地址集合对应的数据被增加写入之后,需要对第二地址集合对应的数据进行同步。参考图11,为本申请提供的一种电子设备实施例八的部分结构示意图,其中,所述电子设备还可以包括以下结构:
第一地址确定单元704,用于在所述数据写入单元702将与所述数据写入命令对应的数据写入所述第一地址集合之后,确定所述第一地址集合中写入数据的第一写入地址。
其中,所述第一写入地址可以理解为第一地址集合中被写入数据之前第一写指针所指向的地址,该地址即为写入数据的地址。
第二地址获取单元705,用于依据所述地址偏移量,获取与所述第一写入地址相对应的第二写入地址。
地址集合写入单元706,用于在所述第二地址集合中,将所述数据写入命令对应的数据写入所述第二写入地址。
其中,所述数据写入命令对应的数据即为所述第一地址集合中所述第一写入地址所对应的数据,因此,经过所述地址集合写入单元706在所述第二地址集合中,将所述数据写入命令对应的数据写入所述第二写入地址之后,所述第一地址集合与所述第二地址集合各自对应的数据相一致,实现数据同步。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种数据处理方法及电子设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种数据处理方法,其特征在于,应用于电子设备,所述电子设备包括存储器,所述方法包括:
为所述存储器中存储的同一数据集合分配不同的地址集合,使得所述数据集合分别对应第一地址集合与第二地址集合,所述第一地址集合与所述第二地址集合之间具有预设地址偏移量,所述第一地址集合对应第一数据访问模式,所述第二地址集合对应第二数据访问模式;
当接收到数据写入命令时,以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合;
当接收到数据读取命令时,以所述第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。
2.根据权利要求1所述的方法,其特征在于,所述以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合,包括:
在所述数据写入命令对应的数据的位宽小于或等于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据写入所述第一地址集合中第一写指针指向地址的高位地址,更新所述第一写指针;
在所述数据写入命令对应的数据的位宽大于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据由所述第一地址集合中第一写指针指向地址的低位地址开始写入,在所述第一写指针指向地址的高位地址被写到时更新所述第一写指针。
3.根据权利要求1所述的方法,其特征在于,所述以所述第二数据访问模式在所述第二数据地址集合中读取与所述数据读取命令相对应的数据,包括:
提取所述数据读取命令中的第一数据地址;
依据所述地址偏移量,获取与所述第一数据地址相对应的第二数据地址;
在所述第二地址集合中读取所述第二数据地址所指向的数据。
4.根据权利要求3所述的方法,其特征在于,依据所述地址偏移量,获取与所述第一数据地址相对应的第二数据地址,包括:
对所述第一数据地址及所述地址偏移量进行加和计算,得到所述第二地址集合中与所述第一数据地址相对应的第二数据地址。
5.根据权利要求1、2、3或4所述的方法,其特征在于,在以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合之后,所述方法还包括:
确定所述第一地址集合中写入数据的第一写入地址;
依据所述地址偏移量,获取与所述第一写入地址相对应的第二写入地址;
在所述第二地址集合中,将所述数据写入命令对应的数据写入所述第二写入地址。
6.一种电子设备,其特征在于,所述电子设备包括存储器,所述电子设备还包括:
数据地址分配单元,用于为所述存储器中存储的同一数据集合分配不同的地址集合,使得所述数据集合分别对应第一地址集合与第二地址集合,所述第一地址集合与所述第二地址集合之间具有预设地址偏移量,所述第一地址集合对应第一数据访问模式,所述第二地址集合对应第二数据访问模式;
数据写入单元,用于当接收到数据写入命令时,以所述第一数据访问模式将与所述数据写入命令对应的数据写入所述第一地址集合;
数据读取单元,用于当接收到数据读取命令时,以所述第二数据访问模式在所述第二地址集合中读取与所述数据读取命令相对应的数据。
7.根据权利要求6所述的电子设备,其特征在于,所述数据写入单元包括:
高位写入子单元,用于在所述数据写入命令对应的数据的位宽小于或等于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据写入所述第一地址集合中第一写指针指向地址的高位地址,更新第一写指针;
低位写入子单元,用于在所述数据写入命令对应的数据的位宽大于所述电子设备总线的数据位宽时,将所述数据写入命令对应的数据由所述第一地址集合中第一写指针指向地址的低位地址开始写入,在所述第一写指针指向地址的高位地址被写到时更新所述第一写指针。
8.根据权利要求6所述的电子设备,其特征在于,所述数据读取单元包括:
第一地址提取子单元,用于提取所述数据读取命令中的第一数据地址;
第二地址获取子单元,用于依据所述地址偏移量,获取与所述第一数据地址相对应的第二数据地址;
数据读取子单元,用于在所述第二地址集合中读取所述第二数据地址所指向的数据。
9.根据权利要求8所述的电子设备,其特征在于,所述第二地址获取子单元包括:
偏移量加和模块,用于对所述第一数据地址及所述地址偏移量进行加和计算,得到所述第二地址集合中与所述第一数据地址相对应的第二数据地址。
10.根据权利要求6、7、8或9所述的电子设备,其特征在于,还包括:
第一地址确定单元,用于在所述数据写入单元将与所述数据写入命令对应的数据写入所述第一地址集合之后,确定所述第一地址集合中写入数据的第一写入地址;
第二地址获取单元,用于依据所述地址偏移量,获取与所述第一写入地址相对应的第二写入地址;
地址集合写入单元,用于在所述第二地址集合中,将所述数据写入命令对应的数据写入所述第二写入地址。
CN201410283472.2A 2014-06-23 2014-06-23 一种数据处理方法及电子设备 Active CN105204774B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410283472.2A CN105204774B (zh) 2014-06-23 2014-06-23 一种数据处理方法及电子设备
US14/586,493 US9747205B2 (en) 2014-06-23 2014-12-30 Method for processing data and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410283472.2A CN105204774B (zh) 2014-06-23 2014-06-23 一种数据处理方法及电子设备

Publications (2)

Publication Number Publication Date
CN105204774A true CN105204774A (zh) 2015-12-30
CN105204774B CN105204774B (zh) 2019-01-15

Family

ID=54869763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410283472.2A Active CN105204774B (zh) 2014-06-23 2014-06-23 一种数据处理方法及电子设备

Country Status (2)

Country Link
US (1) US9747205B2 (zh)
CN (1) CN105204774B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3020782A1 (en) 2016-04-25 2017-11-02 Bae Systems Plc Data processing
CN110832466B (zh) * 2017-07-14 2023-03-10 华为技术有限公司 读、部分写数据方法以及相关装置
CN107979615B (zh) * 2018-01-05 2020-07-03 新华三信息安全技术有限公司 报文加密发送、认证方法、装置、客户端及防火墙

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5809552A (en) * 1992-01-29 1998-09-15 Fujitsu Limited Data processing system, memory access device and method including selecting the number of pipeline stages based on pipeline conditions
US20050216552A1 (en) * 2004-03-24 2005-09-29 Samuel Fineberg Communication-link-attached persistent memory system
CN1783035A (zh) * 2004-12-03 2006-06-07 阿尔卡特公司 用于交叉检查系统的基于存储器的交叉比较
US20120131257A1 (en) * 2006-06-21 2012-05-24 Element Cxi, Llc Multi-Context Configurable Memory Controller
US20130262964A1 (en) * 2012-04-02 2013-10-03 Minebea Co., Ltd. Device and method for the reading and storing of data

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250330B2 (en) * 2004-12-11 2012-08-21 International Business Machines Corporation Memory controller having tables mapping memory addresses to memory modules

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5809552A (en) * 1992-01-29 1998-09-15 Fujitsu Limited Data processing system, memory access device and method including selecting the number of pipeline stages based on pipeline conditions
US20050216552A1 (en) * 2004-03-24 2005-09-29 Samuel Fineberg Communication-link-attached persistent memory system
CN1783035A (zh) * 2004-12-03 2006-06-07 阿尔卡特公司 用于交叉检查系统的基于存储器的交叉比较
US20060123202A1 (en) * 2004-12-03 2006-06-08 Alcatel Memory based cross compare for cross checked systems
US20120131257A1 (en) * 2006-06-21 2012-05-24 Element Cxi, Llc Multi-Context Configurable Memory Controller
US20130262964A1 (en) * 2012-04-02 2013-10-03 Minebea Co., Ltd. Device and method for the reading and storing of data

Also Published As

Publication number Publication date
US9747205B2 (en) 2017-08-29
CN105204774B (zh) 2019-01-15
US20150370703A1 (en) 2015-12-24

Similar Documents

Publication Publication Date Title
EP3715792B1 (en) Method and device for drawing intersection
CN106255953B (zh) 持久性数据存储体中的前向参考记录的方法和系统
CN103744906A (zh) 一种数据同步系统、方法及装置
CN105678378A (zh) 间接访问样本数据以在并行处理系统中执行多卷积操作
US20200233590A1 (en) Offloading device maintenance to an external processor in low-latency, non-volatile memory
CN102654827A (zh) 一种先进先出缓冲器及缓存数据的方法
CN103677653A (zh) 一种基于ssd的数据处理方法及电子设备
CN103064792A (zh) 数据写入方法及装置
CN104407935A (zh) 快照回滚方法和存储设备
CN105204774A (zh) 一种数据处理方法及电子设备
CN103617260A (zh) 重复数据删除的索引生成方法及装置
CN105242879A (zh) 一种数据存储方法以及协议服务器
CN105138284A (zh) 虚拟机磁盘镜像同步操作优化的系统及方法
CN106101712A (zh) 一种视频流数据的处理方法及装置
CN101458655B (zh) 内存管理方法、系统及内存控制装置
CN105868127A (zh) 一种数据存储、读取方法及装置
CN104598161A (zh) 数据读取、写入方法和装置及数据存储结构
CN106598548A (zh) 存储单元读写冲突的解决方法及装置
CN107193599A (zh) 一种动态更新smbios中系统插槽信息的方法
CN103605478A (zh) 存储地址标示、配置方法和数据存取方法及系统
CN102136081A (zh) Ic卡及其数据更新方法
CN103092725B (zh) 一种实现存储器中数据备份的方法及装置
CN107943727A (zh) 一种高效dma控制器
KR20150142250A (ko) 컨트롤러의 작동 방법과 상기 컨트롤러를 포함하는 장치의 작동 방법
CN105245624A (zh) 一种云存储文件系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant