CN113222807B - 数据存储器、数据存储、读取方法、芯片及计算机设备 - Google Patents
数据存储器、数据存储、读取方法、芯片及计算机设备 Download PDFInfo
- Publication number
- CN113222807B CN113222807B CN202110561399.0A CN202110561399A CN113222807B CN 113222807 B CN113222807 B CN 113222807B CN 202110561399 A CN202110561399 A CN 202110561399A CN 113222807 B CN113222807 B CN 113222807B
- Authority
- CN
- China
- Prior art keywords
- data
- storage
- storage bit
- current
- bit
- 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
- 238000000034 method Methods 0.000 title claims abstract description 98
- 238000013500 data storage Methods 0.000 title claims abstract description 93
- 238000012545 processing Methods 0.000 claims description 73
- 230000004044 response Effects 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 description 29
- 238000012546 transfer Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- 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
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Static Random-Access Memory (AREA)
- Memory System (AREA)
Abstract
本公开提供了一种数据存储器、数据存储、读取方法、芯片及计算机设备,其中数据存储器包括:所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;所述多个第一存储位,用于响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据不同,在所述当前第一存储位中存储所述第一数据,并将对应第二存储位中的指示标识置为第一数值;其中,所述指示标识用于指示所述第一数据与所述第二数据是否相同。
Description
技术领域
本公开涉及计算机硬件技术领域,具体而言,涉及一种数据存储器、数据存储、读取方法、芯片及计算机设备。
背景技术
图像处理技术在很多场景下具有重要应用。例如监控领域、自动驾驶领域等;在这些领域中,往往需要对连续的多帧图像或者视频流进行处理。当前通常采用流水架构来实现对多帧图像的高速处理;在图像处理过程中,图像处理系统需要将各帧图像依次存储至数据存储器,且图像处理系统中的处理单元需要从数据存储器中读取图像数据,并对读取的图像数据进行处理。当前的数据存储器存在功耗大的问题。
发明内容
本公开实施例至少提供一种数据存储器、数据存储、读取方法、芯片及计算机设备,能够降低图像处理系统的功耗。
第一方面,本公开实施例提供了一种数据存储器,包括:第一存储体以及第二存储体;所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;所述多个第一存储位,用于响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据不同,在所述当前第一存储位中存储所述第一数据,并将对应第二存储位中的指示标识置为第一数值;其中,所述指示标识用于指示所述第一数据与所述第二数据是否相同。
这样,通过设置第一存储体和第二存储体,在第一存储体的各第一存储位中,在要存储至当前第一存储位的第一数据与前一存储位对应的第二数据不同时,存储第一数据,并将对应第二存储位中的指示标识置为第一数值,该指示标识用于指示第一数据与第二数据是否相同,在进行数据读取时,若指示标识指示第一数据与第二数据相同,则不会通过访问第一存储体来获取第一数据,进而在待存储的图像数据中存在重复数据的情况下,减少数据写入过程中对第一存储体的访问,同时减少数据读取过程中对第一存储体的访问,降低数据写入和读取过程中的功耗。
一种可能的实施方式中,所述多个第一存储位,还用于响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据相同,将与所述当前第一存储位对应的第二存储位中的指示标识置为第二数值。
一种可能的实施方式中,还包括:比较器;所述比较器的输出端分别与所述第一存储体和所述第二存储体连接;所述比较器用于将所述当前第一存储位对应的第一数据、和所述前一存储位对应的第二数据进行比对;响应于所述第一数据和所述第二数据不同,向所述当前第一存储位传输所述第一数据,并控制与所述当前第一存储位对应的第二存储位中的指示标识置为第一数值。
这样,通过比较器将第一数据和第二数据进行比对,以实现在第一数据和第二数据不同的情况下,才会通过访问第一存储体将第一数据存储至当前第一存储位,进而减少在数据存储过程中对第一存储体的访问,降低数据存储过程中的功耗。
一种可能的实施方式中,所述比较器,还用于响应于所述第一数据和所述第二数据相同,控制与所述第一存储位对应的第二存储位中的指示标识置为第二数值。
这样,能够标识出当前第一存储位的具体数据存储情况,方便后续数据的读取过程。
一种可能的实施方式中,还包括:第一寄存器;所述第一寄存器与所述比较器连接;所述第一寄存器,用于存储所述前一第一存储位对应的第二数据;所述比较器,在将所述当前第一存储位对应的第一数据、和所述前一存储位对应的第二数据进行比对时,用于:获取数据写入端传输的第一数据,以及从所述第一寄存器中读取所述前一第一存储位对应的第二数据;将所述数据写入端传输的所述第一数据和从所述第一寄存器中读取的第二数据进行比对。
这样,通过设置第一寄存器,利用第一寄存器暂存第二数据,方便比较器快速获取第二数据。
一种可能的实施方式中,所述比较器,还用于响应于所述第一数据和所述第二数据不同,控制所述第一寄存器中存储的第二数据更新为所述第一数据。
这样,实现对第一寄存器中数据的动态更新。
一种可能的实施方式中,还包括:第一处理电路;所述第一处理电路的输入端和所述比较器的输出端连接,所述第一处理电路的输出端和所述第一存储体连接;所述第一处理电路,用于在接收到数据写入端传输的针对所述当前第一存储位的写使能信号、以及所述比较器传输的第一数据后,基于所述写使能信号将所述第一数据写入所述当前第一存储位。
这样,通过第一处理电路来实现对第一存储体的访问。
一种可能的实施方式中,还包括:数据选择器;所述数据选择器的输入端分别与所述第一存储体和所述第二存储体连接;所述数据选择器用于从与当前第一存储位对应的第二存储位读取指示标识;基于所述指示标识,向数据读取端传输从所述当前第一存储位获取存储至所述当前第一存储位的第一数据,或者向所述数据读取端传输与所述前一第一存储位对应的第二数据。
这样,通过数据选择器选择输出第一数据或者第二数据,减少数据读取过程中对第一存储体的访问,降低数据读取过程中的功耗。
一种可能的实施方式中,还包括:第二处理电路;所述第二处理电路分别与所述第一存储体和所述第二存储体连接;所述第二处理电路,用于在接收到所述数据读取端传输的针对所述当前第一存储位的读使能信号后,从与所述当前第一存储位对应的第二存储位中读取所述当前第一存储位对应的指示标识,并响应于所述指示标识指示从所述当前第一存储位读取所述第一数据,向所述第一存储体发送数据读取请求;所述第一数据存储体,还用于基于所述数据读取请求,向所述数据选择器传输存储在所述当前第一存储位的第一数据。
这样,通过第二处理电路来触发对第一存储体的访问,可以根据指示标识选择是否要访问第一存储体,实现数据的读取过程。
一种可能的实施方式中,还包括:第二寄存器;所述第二寄存器与所述数据选择器连接;所述第二寄存器,用于存储所述前一第一存储位对应的第二数据;所述数据选择器,在基于所述指示标识,向数据读取端传输从所述当前第一存储位获取存储至所述当前第一存储位的第一数据,或者向所述数据读取端与所述前一第一存储位对应的第二数据时,用于:读取所述指示标识;响应于所述指示标识为第一数值,向所述数据读取端传输所述第一存储体传输所述第一数据;响应于所述指示标识为第二数值,从所述第二寄存器读取与所述前一第一存储位对应的所述第二数据,并向所述数据读取端传输所述第二数据。
一种可能的实施方式中,所述第二寄存器还与所述第一存储体连接;所述第一存储体,在向所述数据选择器传输存储在所述当前第一存储位的第一数据时,还用于:向所述第二寄存器传输所述第一数据;所述第二寄存器,还用于在接收到所述第一存储体传输的第一数据后,将存储的第二数据更新为所述第一数据。
第二方面,本公开实施例还提供一种数据存储器,包括:第一存储体以及第二存储体;
所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;
所述多个第一存储位,用于响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据不同,将所述第一数据确定为待读取数据并读取。
一种可能的实施方式中,所述多个第一存储位,还用于响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据相同,将所述第二数据确定为待读取数据并读取。
第三方面,本公开实施例还提供一种数据存储方法,应用于数据存储器,所述数据存储器包括:第一存储体和第二存储体;所述第一存储体包括多个第一存储位;第二存储体包括多个与所述第一存储位分别对应的第二存储位;所述数据存储方法包括:所述多个第一存储位响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据不同,在所述当前第一存储位中存储所述第一数据,并将对应第二存储位中的指示标识置为第一数值;其中,所述指示标识用于指示所述第一数据与所述第二数据是否相同。
一种可能的实施方式中,还包括:
所述多个第一存储位响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据相同,将与所述当前第一存储位对应的第二存储位中的指示标识置为第二数值。
一种可能的实施方式中,所述数据存储器还包括:比较器;所述比较器的输出端分别与所述第一存储体和所述第二存储体连接;所述数据存储方法还包括:所述比较器将所述当前第一存储位对应的第一数据、和所述前一存储位对应的第二数据进行比对;响应于所述第一数据和所述第二数据不同,向所述当前第一存储位传输所述第一数据,并控制与所述当前第一存储位对应的第二存储位中的指示标识置为第一数值。
一种可能的实施方式中,还包括:所述比较器响应于所述第一数据和所述第二数据相同,控制与所述第一存储位对应的第二存储位中的指示标识置为第二数值。
一种可能的实施方式中,所述数据存储器还包括:第一寄存器;所述第一寄存器与所述比较器连接;所述数据存储方法还包括:所述第一寄存器存储所述前一第一存储位对应的第二数据;所述比较器将所述当前第一存储位对应的第一数据、和所述前一存储位对应的第二数据进行比对,包括:获取数据写入端传输的第一数据,以及从所述第一寄存器中读取所述前一第一存储位对应的第二数据;将所述数据写入端传输的所述第一数据和从所述第一寄存器中读取的第二数据进行比对。
一种可能的实施方式中,还包括:所述比较器响应于所述第一数据和所述第二数据不同,控制所述第一寄存器中存储的第二数据更新为所述第一数据。
一种可能的实施方式中,所述数据存储器还包括:第一处理电路;所述第一处理电路的输入端和所述比较器的输出端连接,所述第一处理电路的输出端和所述第一存储体连接;所述数据存储方法还包括:所述第一处理电路在接收到数据写入端传输的针对所述当前第一存储位的写使能信号、以及所述比较器传输的第一数据后,基于所述写使能信号将所述第一数据写入所述当前第一存储位。
第四方面,本公开实施例还提供一种数据读取方法,应用于数据存储器,所述数据存储器包括:第一存储体和第二存储体;所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;所述数据存储方法包括:
响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据不同,将所述第一数据确定为待读取数据并进行读取。
一种可能的实施方式中,所述方法还包括:响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据相同,将所述第二数据确定为待读取数据并读取。
第五方面,本公开实施例还提供一种芯片,包括如第一方面任一项所述的数据存储器、和/或第二方面所述的数据存储器。
第六方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器,及如第一方面任一项所述的数据存储器,或者包括如第二方面任二项所述的数据存储器,或者包括如第五方面所述的芯片。
第七方面,本公开实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被计算机设备运行时,所述计算机设备执行如第三方面任一项所述的数据存储方法的步骤,或执行如第四方面任一项所述的数据读取方法的步骤。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种数据存储器的示意图;
图2示出了本公开实施例所提供的另一种数据存储器的示意图;
图3示出了本公开实施例所提供的一种数据存储方法的流程图;
图4示出了本公开实施例所提供的一种数据读取方法的流程图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
经研究发现,在对图像数据进行存储的时候,通常会按照图像数据中各个像素点在图像中的位置,将各个像素点分别对应的像素信息依次存储至存储设备的各个存储位。这种数据存储方式使得在进行图像数据的存储时,图像数据的每次写入或读取,都需要依次访问用于存储多个像素点分别对应的像素信息的存储位,导致数据的写入和读取过程功耗较大的问题。
基于上述研究,本公开提供了一种数据存储器,通过设置第一存储体和第二存储体,在第一存储体的各第一存储位中,在要存储至当前第一存储位的第一数据与前一存储位对应的第二数据不同时,存储第一数据,并通过第二存储体中的各个第二存储位存储与第一存储位对应的指示标识,该指示标识能够指示是否要从对应的第一存储位读取第一数据,从而在待存储的图像数据中存在重复数据的情况下,减少数据写入过程中对第一存储体的访问,同时减少数据读取过程中对第一存储体的访问,降低数据写入和读取过程中的功耗。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种数据存储器进行详细介绍,本公开实施例提供的数据存储器可以应用于计算机设备中,计算机设备例如包括:该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。该种数据存储器可以用于对各种数据的存储,如图像数据、音频数据、文本数据、其他格式的数据等。
参见图1所示,为本公开实施例提供的数据存储器的结构示意图,包括:第一存储体10以及第二存储体20。所述第一存储体10包括多个第一存储位;所述第二存储体20包括与多个所述第一存储位分别对应的第二存储位;
所述多个第一存储位,用于响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据不同,在所述当前第一存储位中存储所述第一数据,并将对应第二存储位中的指示标识置为第一数值;
其中,所述指示标识用于指示所述第一数据与所述第二数据是否相同。
在本公开另一实施例中,所述多个第一存储位,还用于响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据相同,将与所述当前第一存储位对应的第二存储位中的指示标识置为第二数值。
参见图2所示,本公开其他实施例中,还可以包括下述至少一种:第一寄存器30、比较器40、第一处理电路50、第二寄存器60、数据选择器70、第二处理电路80。
下面对本公开实施例提供的数据存储器中的各部件(包括上述第一存储体10、第二存储体20、第一寄存器30、比较器40、第一处理电路50、第二寄存器60、数据选择器70、第二处理电路80)之间的连接关系、以及各部件的功能加以详细说明。
本公开实施例提供的第一存储体10例如包括:静态随机存取存储器(StaticRandom-Access Memory,SRAM)、随机存取存储器(random access memory,RAM)等中任一种。在第一存储体10中包括多个第一存储位;每个第一存储位对应一数据存储空间;每个数据存储空间对应至少一个数据存储地址;具体的可以根据实际的数据存储需求,为每个存储位确定数据存储空间的大小。
本公开各个实施例中,第一存储体10例如包括N个第一存储位,每个第一存储位均可以作为当前第一存储位;示例性的,假设当前第一存储位为N个第一存储位中的第i个第一存储位,则对应的前一存储位则为第i-1个第一存储位。若当前第一存储位为第一存储体10中的首个第一存储位,则其不存在前一存储位。
在向第一存储体10写入待存储数据时,每个第一存储位用于存储该待存储数据中的一子数据;示例性的,若待存储数据为图像数据,则每一子数据包括图像数据中一个像素点对应的像素数据,如像素点的像素值等。
第二存储体20例如包括寄存器;示例性的,第二存储体20例如是由多个寄存器构成的寄存器堆;每个寄存器即为一个第二存储位,每个第二存储位与一个第一存储位对应。每个寄存器能够存储预设数量比特位的数据,该数据即为对应第一存储位的指示标识。
在具体实施中,构成第二存储体20的寄存器堆中寄存器的数量,例如和第一存储位的数量相同;可以将寄存器堆中的各个寄存器与对应的第一存储位采用相同的数据存储地址,通过同一数据存储地址,访问第一存储体10中的第一存储位、并访问与该第一存储位对应的第二存储位。
此处,指示标识指示第一数据与第二数据不相同的情况下,通过访问第一存储体10读取第一数据;在指示标识指示第一数据与第二数据相同时,例如可以是对已经读取到的前一第一存储位的第二数据进行复制,也可以在连续对多个第一存储位对应的数据进行读取的过程中,将前一第一存储位对应的数据存储在一寄存器中,该寄存器随着数据在不同第一存储位中的变化而不断更新;在该种情况下,可以从该寄存器中读取前一第一存储位对应的第二数据,该寄存器即本公开实施例所述的第二寄存器60,具体的读取方式可以参见下述实施例对第二寄存器60的描述,在此不再赘述。
在本公开另一实施例中,还可以包括:比较器40。其中,比较器40的输出端分别与第一存储体10和第二存储体20连接;比较器40用于将当前第一存储位对应的第一数据、和前一第一存储位对应的第二数据进行比对,响应于所述第一数据和所述第二数据不同,向当前第一存储位传输第一数据,并控制与当前第一存储位对应的第二存储位中的指示标识为第一数值。
比较器40,还用于响应于所述第一数据和所述第二数据相同,控制与所述第一存储位对应的第二存储位中的指示标识置为第二数值。
示例性的,第一数值为1,也即若该指示标识为1,表征与该寄存器对应的第一存储位中存储有数据;第二数值为0,也即若该指示标识为0,则表征与该寄存器对应的第一存储位未存储数据(可以为空,也可以是除待存储数据外的其他数据),在该种情况下,由于当前第一存储位对应的第一数据与前一第一存储位对应的第二数据相同,因此可以直接将前一第一存储位对应的第二数据作为当前第一存储位的数据。
另外,本公开另一实施例中,还包括:第一寄存器30。该第一寄存器30与比较器40连接。
所述第一寄存器30,用于存储所述前一第一存储位对应的第二数据;
所述比较器40,在将所述当前第一存储位对应的第一数据、和所述前一存储位对应的第二数据进行比对时,用于:获取数据写入端传输的第一数据,以及从所述第一寄存器30中读取所述前一第一存储位对应的第二数据;将所述数据写入端传输的所述第一数据和从所述第一寄存器30中读取的第二数据进行比对。
所述比较器40,还用于响应于第一数据和所述第二数据不同,控制所述第一寄存器30中存储的第二数据更新为所述第一数据。
这样,通过在对连续的多个第一存储位中存储的数据写入的过程中,将多个第一存储位依次作为当前第一存储位,若要写入当前第一存储位存储的第一数据与其前一第一存储位对应的第二数据不同,则将第一数据写入到当前第一存储位,并控制第一寄存器30中存储的数据更新为该第一数据,用于将下一第一存储位作为当前存储位时进行数据写入;若当前第一存储位第一数据与前一第一存储位对应的第二数据相同,则不将第一数据写入当前第一存储位,同时由于第一数据和第二数据相同,也不需要对第一寄存器30中存储的数据进行更新,进而通过该种方式,在待存储数据中包括重复数据的情况下,能够减少对第一存储体10的访问,降低数据写入第一存储体10时的功耗。
在本公开另一实施例中,还包括:第一处理电路50;
所述第一处理电路50的输入端和所述比较器40的输出端连接,所述第一处理电路50的输出端和所述第一存储体10连接;
所述第一处理电路50,用于在接收到数据写入端传输的针对所述当前第一存储位的写使能信号、以及所述比较器40传输的第一数据后,基于所述写使能信号将所述第一数据写入所述当前第一存储位。
此处,写使能信号中例如携带有当前第一存储位的数据存储地址;第一处理电路50在接收到写使能信号后,若接收到比较器40传输的第一数据,能够根据写使能信号中携带的数据存储地址访问当前第一存储位,并将第一数据存储至当前第一存储位。
示例性的,本公开实施例提供一种向数据存储器写入数据的具体过程,在数据存储器中的第一存储体10中包括N个第一存储位,第二存储体20中包括N个第二存储位,第一存储位和第二存储位一一对应。其中,与N个第一存储位分别对应的数据包括:a1~aN,数据的读入过程例如下:
(1):针对第1个第一存储位:数据写入端将第1个第一存储位对应的数据a1传输给比较器40。此时第一寄存器30中的数据为空或者为预设数据,该预设数据例如为由m个1构成的数据,或者由m个0构成的数据。比较器40将数据a1将该预设数据进行比对,两者不一致,将数据a1传输给第一处理电路50;或者,比较器40在从第一寄存器30中读取到的数据为空时,判断将数据a1传输给第一处理电路50。第一处理电路50接收到数据写入端传输的写使能信号,根据写使能信号中携带的第1个第一存储位对应的数据存储地址,并基于该数据存储地址,将数据a1写入到第1个第一存储位;比较器40还将第二存储体20中与第1个第一存储位对应的第1个第二存储位中的指示标识置为第一数值;另外,比较器40还将数据a1写入到第一寄存器30中。
(2):针对第2个第一存储位:
数据写入端将第2个第一存储位对应的数据a2传输给比较器40。此时,第一寄存器30中存储有数据a1。比较器40会从第一寄存器30中读取数据a1,并将数据a1和数据a2进行比对。
若a1和a2不同,将数据a2传输给第一处理电路50。第一处理电路50接收到数据写入端传输的写使能信号,根据写使能信号中携带的第2个第一存储位对应的数据存储地址,将数据a2写入到第2个第一存储位。比较器40还会将第二存储体20中与第2个第一存储位对应的第2个第二存储位中的指示标识置为第一数值。另外,比较器40还将数据a2写入到第一寄存器30中,将第一寄存器30中的数据a1替换为a2。
(3):针对第3个第一存储位:
数据写入端将第3个第一存储位对应的数据a3传输给比较器40。此时,第一寄存器30中存储有数据a2。比较器40会从第一寄存器30中读取数据a2,并将数据a2和数据a3进行比对。
若a2和a3相同,则将第二存储体20中与第3个第一存储位对应的第3个第二存储位的指示标识置为第二数值。
(4)针对第4个第一存储位:
数据写入端将第4个第一存储位对应的数据a4传输给比较器40。此时,第一寄存器30中存储有数据a2,由于a2和a3相同,认为a2即为a3,也即第一寄存器30中存储了第3个第一存储位对应的数据。比较器40会从第一寄存器30中读取数据a2,并将数据a2和数据a4进行比对。
若a2和a4相同,则将第二存储体20中与第4个第一存储位对应的第4个第二存储位的指示标识置为第二数值。
(5):针对第5个第一存储位:
数据写入端将第5个第一存储位对应的数据a5传输给比较器40。此时,第一寄存器30中存储有数据a2,由于a2和a4相同,认为a2即为a4,也即第一寄存器30中存储了第4个第一存储位对应的数据。比较器40会从第一寄存器30中读取数据a2,并将数据a2和数据a5进行比对。
若a2和a5不同,则将数据a5传输给第一处理电路50。第一处理电路50接收到数据写入端传输的写使能信号,根据写使能信号中携带的第5个第一存储位对应的数据存储地址,将数据a5写入到第5个第一存储位。比较器40还会将与第5个第一存储位对应的第5个第二存储位中的指示标识置为第一数值。另外,比较器40还将数据a5写入到第一寄存器30中,将第一寄存器30中的数据a5替换为a2。
……
通过上述过程,可以实现将待存储数据存储至数据存储器中,并在存储待存储数据的过程中,通过减少重复数据对第一存储体10的访问,来降低数据存储过程中的功耗。
在本公开另一实施例中,还包括:数据选择器70。其中,所述数据选择器70的输入端分别与所述第一存储体10和所述第二存储体20连接;
所述数据选择器70用于从与当前第一存储位对应的第二存储位读取指示标识;基于所述指示标识,向数据读取端传输从所述当前第一存储位获取存储至所述当前第一存储位的第一数据,或者向所述数据读取端传输与所述前一第一存储位对应的第二数据。
在具体实施中,在从数据存储器中读取数据的时候,数据选择器70能够根据第二存储位中存储的指示标识,确定向数据读取端传输从第一存储位获取的第一数据,或者向数据读取端传输与前一第一存储位对应的第二数据;此处,由于数据在存储的过程中,若当前第一存储位和前一第一存储位对应的数据相同,不会将当前第一存储位对应的第一数据存储至第一存储位中,因而,在需要读取与第一存储位对应的第一数据时,会直接将前一第一存储位对应的数据作为当前第一存储位对应的数据。若当前第一存储位和前一第一存储位对应的数据不同,则通过访问第一存储体10,获取当前第一存储位中存储的第一数据,并向数据读取端传输该第一数据。
在另一实施例中,在数据存储器中还包括第二处理电路80。
所述第二处理电路80分别与所述第一存储体10和所述第二存储体20连接;
所述第二处理电路80,用于在接收到所述数据读取端传输的针对所述当前第一存储位的读使能信号后,从与所述当前第一存储位对应的第二存储位中读取所述当前第一存储位对应的指示标识,并响应于所述指示标识指示从所述当前第一存储位读取所述第一数据,向所述第一存储体10发送数据读取请求;
所述第一数据存储体,还用于基于所述数据读取请求,向所述数据选择器70传输存储在所述当前第一存储位的第一数据。
此处,数据读取端向第二处理电路80传输的读使能信号中,携带有要读取的当前第一存储位的数据存储地址;与当前第一存储位对应的第二存储位具有相同的数据存储地址,因此,第二处理电路80能够根据该数据存储地址,访问第二存储体20,从第二存储体20中获取当前第一存储位对应的第二存储位中存储的指示标识。
若该指示标识指示从当前第一存储位读取第一数据,则向第一存储体10发送数据读取请求。该数据读取请求中,携带了当前第一存储位的数据存储地址;第一存储体10在接收到数据读取请求后,基于该数据存储地址,将当前第一存储位存储的第一数据发送给数据选择器70。
在一种可能的实施方式中,第二存储体20在向第二处理电路80传输指示标识的时候,还会将指示标识传输给数据选择器70,该指示标识作为对数据选择器70的触发信号,使得数据选择器70在接收到指示标识后,触发数据选择器70的工作,以向数据读取端传输从所述当前第一存储位获取存储至所述当前第一存储位的第一数据,或者向所述数据读取端传输与所述前一第一存储位对应的第二数据。
在本公开另一实施例中,还包括:第二寄存器60。
所述第二寄存器60与所述数据选择器70连接。
所述第二寄存器60,用于存储所述前一第一存储位对应的第二数据。
所述数据选择器70,在基于所述指示标识,向数据读取端传输从所述当前第一存储位获取存储至所述当前第一存储位的第一数据,或者向所述数据读取端与所述前一第一存储位对应的第二数据时,用于:读取所述指示标识;响应于所述指示标识为第一数值,向所述数据读取端传输所述第一存储体10传输所述第一数据;响应于所述指示标识为第二数值,从所述第二寄存器60读取与所述前一第一存储位对应的所述第二数据,并向所述数据读取端传输所述第二数据。
在具体实施中,数据选择器70有两个数据输入端,分别为第一输入端和第二输入端;第一输入端和第一存储体10连接;第二输入端和第二寄存器60连接。
其中,在指示标识指示从当前第一存储位读取所述第一数据的情况下,数据选择器70通过与第一输入端接收第一数据,并选通第一输入端和数据选择器70的数据输出端之间的数据传输通路,将第一数据传输给数据读取端。
在指示标识指示读取与所述前一第一存储位对应的第二数据的情况下,数据选择器70通过与第二输入端接收第二寄存器60传输的第二数据,并选通第二输入端和数据选择器70的数据输出端之间的数据传输通路,将第二数据传输给数据读取端。
这样,若当前第一存储位对应的第一数据与前一第一存储位对应的第二数据相同,则不需要通过访问第一存储体10来获取与当前第一存储位对应的数据,从而能够减少数据读取过程中的功耗。
另一实施例中,所述第二寄存器60还与所述第一存储体10连接;
所述第一存储体10,在向所述数据选择器70传输存储在所述当前第一存储位的第一数据时,还用于:向所述第二寄存器60传输所述第一数据;
所述第二寄存器60,还用于在接收到所述第一存储体10传输的第一数据后,将存储的第二数据更新为所述第一数据。
这样,可以实现对第二寄存器60中存储数据的不断更新,以能够通过访问第二寄存器60来获取第二数据。由于访问寄存器所需要的能耗远远小于访问第一存储体10的能耗,因而可以减少数据读取过程中所需要的功耗。
示例性的,本公开实施例提供一种从数据存储器中读取数据的具体过程,与上述示例类似,在数据存储器中的第一存储体10中包括N个第一存储位,第二存储体20中包括N个第二存储位,第一存储位和第二存储位一一对应。其中,与N个第一存储位分别对应的数据包括:a1~aN,数据的读取过程例如下:
(1):针对第1个第一存储位:数据读取端向第二处理电路80发送针对第1个第一存储位的读使能信号;第二处理电路80根据读使能信号中携带的数据存储地址,从第二存储体20中的第1个第二存储位中,读取与第1个第一存储位对应的指示标识。该指示标识为第一数值,指示要从第1个第一存储位中读取数据a1。第二处理电路80向第一存储体10发送数据读取请求。在该数据读取请求中携带了第1个第一存储位的数据存储地址。
第一存储体10在接收到数据读取请求后,根据数据存储地址,将第1个第一数据存储位中存储的数据a1传输给数据选择器70的第一输入端。
第二存储体20还将第1个第一存储位的指示标识发送给数据选择器70。数据选择器70根据该指示标识,选通第一输入端和数据输出端之间的数据传输通路,将数据a1传输给数据读取端。
第一存储体10还将数据a1传输给第二寄存器60,第二寄存器60保存数据a1。
(2)针对第2个第一存储位:数据读取端向第二处理电路80发送针对第2个第一存储位的读使能信号;第二处理电路80根据读使能信号中携带的数据存储地址,从第二存储体20中的第2个第二存储位中,读取与第2个第一存储位对应的指示标识。该指示标识为第一数值,指示要从第2个第一存储位中读取数据a2。第二处理电路80向第一存储体10发送数据读取请求。在该数据读取请求中携带了第2个第一存储位的数据存储地址。
第一存储体10在接收到数据读取请求后,根据数据存储地址,将第2个第一数据存储位中存储的数据a2传输给数据选择器70的第一输入端。
第二存储体20还将第2个第一存储位的指示标识发送给数据选择器70。数据选择器70根据该指示标识,选通第一输入端和数据输出端之间的数据传输通路,将数据a2传输给数据读取端。
第一存储体10还将数据a2传输给第二寄存器60,第二寄存器60保存数据a1替换为数据a2。
(3)针对第3个第一存储位:数据读取端向第二处理电路80发送针对第3个第一存储位的读使能信号;第二处理电路80根据读使能信号中携带的数据存储地址,从第二存储体20中的第3个第二存储位中,读取与第3个第一存储位对应的指示标识。该指示标识为第二数值,指示读取前一第一存储位,也即第2个第一存储位对应的数据a2,第二处理电路80结束本数据读取周期的工作,不再访问第一存储体10。
第二存储体20还将第3个第一存储位的指示标识发送给数据选择器70。数据选择器70根据该指示标识,选通第二输入端和数据输出端之间的数据传输通路,将数据选择器70中存储的数据a2作为第3个第一存储位对应的数据传输给数据读取端。
(4)针对第4个第一存储位:数据读取端向第二处理电路80发送针对第4个第一存储位的读使能信号;第二处理电路80根据读使能信号中携带的数据存储地址,从第二存储体20中的第4个第二存储位中,读取与第4个第一存储位对应的指示标识。该指示标识为第二数值,指示读取前一第一存储位,也即第3个第一存储位对应的数据a3,第二处理电路80结束本数据读取周期的工作,不再访问第一存储体10。
第二存储体20还将第4个第一存储位的指示标识发送给数据选择器70。数据选择器70根据该指示标识,选通第二输入端和数据输出端之间的数据传输通路,由于a2和a3相同,因此将数据选择器70中存储的数据a2作为第4个第一存储位对应的数据传输给数据读取端。
(5)针对第5个第一存储位:数据读取端向第二处理电路80发送针对第5个第一存储位的读使能信号;第二处理电路80根据读使能信号中携带的数据存储地址,从第二存储体20中的第5个第二存储位中,读取与第5个第一存储位对应的指示标识。该指示标识为第一数值,指示要从第5个第一存储位中读取数据a5。第二处理电路80向第一存储体10发送数据读取请求。在该数据读取请求中携带了第5个第一存储位的数据存储地址。
第一存储体10在接收到数据读取请求后,根据数据存储地址,将第5个第一数据存储位中存储的数据a5传输给数据选择器70的第一输入端。
第二存储体20还将第5个第一存储位的指示标识发送给数据选择器70。数据选择器70根据该指示标识,选通第一输入端和数据输出端之间的数据传输通路,将数据a5传输给数据读取端。
第一存储体10还将数据a5传输给第二寄存器60,第二寄存器60保存数据a2替换为数据a5。
……
通过上述过程,可以实现在从待存储数据读取数据时,通过减少在读取重复数据时对第一存储体的访问,来降低数据读取过程中的功耗。
本领域技术人员可以理解,在具体实施方式的上述数据存储器中,各部件的连接关系和各自的功能并不对本公开实施例提供的数据存储器的结构构成任何限定,数据存储器的具体结构应当以其功能和可能的内在逻辑确定。
本公开另一实施例还提供另外一种数据存储器,包括:第一存储体以及第二存储体;
所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;
所述多个第一存储位,用于响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据不同,将所述第一数据确定为待读取数据并读取。
一种可能的实施方式中,所述多个第一存储位,还用于响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据相同,将所述第二数据确定为待读取数据并读取。
上述数据存储器的结构、以及具体逻辑功能可以参见上述图1~图2对应的实施例,在此不再赘述。
基于同一发明构思,本公开实施例中还提供了与数据存储器对应的数据存储方法和数据读取方法,由于本公开实施例中的方法解决问题的原理与本公开实施例上述数据存储器相似,因此方法的实施可以参见数据存储器的实施,重复之处不再赘述。
参照图3所示,为本公开实施例提供的一种数据存储方法的示意图,包括:
应用于数据存储器,所述数据存储器包括:第一存储体和第二存储体;所述第一存储体包括多个第一存储位;第二存储体包括多个与所述第一存储位对应的第二存储位;所述数据存储方法包括:
S301:所述多个第一存储位响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据不同,在所述当前第一存储位中存储所述第一数据;
S302:将对应第二存储位中的指示标识置为第一数值。
一种可能的实施方式中,还包括:
所述多个第一存储位响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据相同,将与所述当前第一存储位对应的第二存储位中的指示标识置为第二数值。
一种可能的实施方式中,所述数据存储器还包括:比较器;所述比较器的输出端分别与所述第一存储体和所述第二存储体连接;所述数据存储方法还包括:所述比较器将所述当前第一存储位对应的第一数据、和所述前一存储位对应的第二数据进行比对;响应于所述第一数据和所述第二数据不同,向所述当前第一存储位传输所述第一数据,并控制与所述当前第一存储位对应的第二存储位中的指示标识置为第一数值。
一种可能的实施方式中,还包括:所述比较器响应于所述第一数据和所述第二数据相同,控制与所述第一存储位对应的第二存储位中的指示标识置为第二数值。
一种可能的实施方式中,所述数据存储器还包括:第一寄存器;所述第一寄存器与所述比较器连接;所述数据存储方法还包括:所述第一寄存器存储所述前一第一存储位对应的第二数据;所述比较器将所述当前第一存储位对应的第一数据、和所述前一存储位对应的第二数据进行比对,包括:获取数据写入端传输的第一数据,以及从所述第一寄存器中读取所述前一第一存储位对应的第二数据;将所述数据写入端传输的所述第一数据和从所述第一寄存器中读取的第二数据进行比对。
一种可能的实施方式中,还包括:所述比较器响应于所述第一数据和所述第二数据不同,控制所述第一寄存器中存储的第二数据更新为所述第一数据。
一种可能的实施方式中,所述数据存储器还包括:第一处理电路;所述第一处理电路的输入端和所述比较器的输出端连接,所述第一处理电路的输出端和所述第一存储体连接;所述数据存储方法还包括:所述第一处理电路在接收到数据写入端传输的针对所述当前第一存储位的写使能信号、以及所述比较器传输的第一数据后,基于所述写使能信号将所述第一数据写入所述当前第一存储位。
参见图4所示,本公开实施例提供的数据读取方法,应用于数据存储器,所述数据存储器包括:第一存储体和第二存储体;所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;所述数据存储方法包括:
S401:响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据不同,将所述第一数据确定为待读取数据。
S402:进行待读取数据的读取。
一种可能的实施方式中,所述方法还包括:响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据相同,将所述第二数据确定为待读取数据并读取。
一种可能的实施方式中,数据存储器还包括:第二处理电路;所述第二处理电路分别与所述第一存储体和所述第二存储体连接;所述数据读取方法还包括:所述第二处理电路在接收到所述数据读取端传输的针对所述当前第一存储位的读使能信号后,从与所述当前第一存储位对应的第二存储位中读取所述当前第一存储位对应的指示标识,并响应于所述指示标识指示从所述当前第一存储位读取所述第一数据,向所述第一存储体发送数据读取请求;所述第一数据存储体基于所述数据读取请求,向所述数据选择器传输存储在所述当前第一存储位的第一数据。
一种可能的实施方式中,数据存储器还包括:第二寄存器;所述第二寄存器与所述数据选择器连接;所述第二寄存器存储有所述前一第一存储位对应的第二数据;所述数据读取方法还包括:所述数据选择器基于所述指示标识,向数据读取端传输从所述当前第一存储位获取存储至所述当前第一存储位的第一数据,或者向所述数据读取端与所述前一第一存储位对应的第二数据,包括:读取所述指示标识;响应于所述指示标识为第一数值,向所述数据读取端传输所述第一存储体传输所述第一数据;响应于所述指示标识为第二数值,从所述第二寄存器读取与所述前一第一存储位对应的所述第二数据,并向所述数据读取端传输所述第二数据。
一种可能的实施方式中,所述第二寄存器还与所述第一存储体连接;所述数据读取方法还包括:所述第一存储体,在向所述数据选择器传输存储在所述当前第一存储位的第一数据时,向所述第二寄存器传输所述第一数据;所述第二寄存器在接收到所述第一存储体传输的第一数据后,将存储的第二数据更新为所述第一数据。
本公开实施例还提供一种芯片,包括如本公开任一实施例所述的数据存储器。
本公开实施例还提供一种计算机设备,包括:处理器、存储器,及本公开任一实施例所述的数据存储器,或者包括如本公开实施例提供的芯片。
本公开实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被计算机设备运行时,所述计算机设备执行如本公开任一实施例所述的数据存储方法的步骤,或执行如本公开任一实施例所述的数据读取方法的步骤。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的数据存储方法或者数据读取方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (14)
1.一种数据存储器,其特征在于,包括:第一存储体以及第二存储体;
所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;所述第二存储体包括寄存器堆;
所述多个第一存储位,用于响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据不同,在所述当前第一存储位中存储所述第一数据,并将对应第二存储位中的指示标识置为第一数值;
其中,所述指示标识用于指示所述第一数据与所述第二数据是否相同;
所述多个第一存储位,还用于响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据相同,将与所述当前第一存储位对应的第二存储位中的指示标识置为第二数值,且不在所述第一存储位存储所述第一数据;
还包括:比较器;
所述比较器的输出端分别与所述第一存储体和所述第二存储体连接;
所述比较器用于将所述当前第一存储位对应的第一数据、和所述前一第一存储位对应的第二数据进行比对;
响应于所述第一数据和所述第二数据不同,向所述当前第一存储位传输所述第一数据,并控制与所述当前第一存储位对应的第二存储位中的指示标识置为第一数值;
所述比较器,还用于响应于所述第一数据和所述第二数据相同,控制与所述第一存储位对应的第二存储位中的指示标识置为第二数值。
2.根据权利要求1所述的数据存储器,其特征在于,还包括:第一寄存器;
所述第一寄存器与所述比较器连接;
所述第一寄存器,用于存储所述前一第一存储位对应的第二数据;
所述比较器,在将所述当前第一存储位对应的第一数据、和所述前一第一存储位对应的第二数据进行比对时,用于:获取数据写入端传输的第一数据,以及从所述第一寄存器中读取所述前一第一存储位对应的第二数据;
将所述数据写入端传输的所述第一数据和从所述第一寄存器中读取的第二数据进行比对。
3.根据权利要求2所述的数据存储器,其特征在于,所述比较器,还用于响应于所述第一数据和所述第二数据不同,控制所述第一寄存器中存储的第二数据更新为所述第一数据。
4.根据权利要求1-3任一项所述的数据存储器,其特征在于,还包括:第一处理电路;
所述第一处理电路的输入端和所述比较器的输出端连接,所述第一处理电路的输出端和所述第一存储体连接;
所述第一处理电路,用于在接收到数据写入端传输的针对所述当前第一存储位的写使能信号、以及所述比较器传输的第一数据后,基于所述写使能信号将所述第一数据写入所述当前第一存储位。
5.根据权利要求1-3任一项所述的数据存储器,其特征在于,还包括:数据选择器;
所述数据选择器的输入端分别与所述第一存储体和所述第二存储体连接;
所述数据选择器用于从与当前第一存储位对应的第二存储位读取指示标识;基于所述指示标识,向数据读取端传输从所述当前第一存储位获取存储至所述当前第一存储位的第一数据,或者向所述数据读取端传输与所述前一第一存储位对应的第二数据。
6.根据权利要求5所述的数据存储器,其特征在于,还包括:第二处理电路;
所述第二处理电路分别与所述第一存储体和所述第二存储体连接;
所述第二处理电路,用于在接收到所述数据读取端传输的针对所述当前第一存储位的读使能信号后,从与所述当前第一存储位对应的第二存储位中读取所述当前第一存储位对应的指示标识,并响应于所述指示标识指示从所述当前第一存储位读取所述第一数据,向所述第一存储体发送数据读取请求;
所述第一数据存储体,还用于基于所述数据读取请求,向所述数据选择器传输存储在所述当前第一存储位的第一数据。
7.根据权利要求6所述的数据存储器,其特征在于,还包括:第二寄存器;
所述第二寄存器与所述数据选择器连接;
所述第二寄存器,用于存储所述前一第一存储位对应的第二数据;
所述数据选择器,在基于所述指示标识,向数据读取端传输从所述当前第一存储位获取存储至所述当前第一存储位的第一数据,或者向所述数据读取端与所述前一第一存储位对应的第二数据时,用于:读取所述指示标识;响应于所述指示标识为第一数值,向所述数据读取端传输所述第一存储体传输所述第一数据;响应于所述指示标识为第二数值,从所述第二寄存器读取与所述前一第一存储位对应的所述第二数据,并向所述数据读取端传输所述第二数据。
8.根据权利要求7所述的数据存储器,其特征在于,所述第二寄存器还与所述第一存储体连接;
所述第一存储体,在向所述数据选择器传输存储在所述当前第一存储位的第一数据时,还用于:向所述第二寄存器传输所述第一数据;
所述第二寄存器,还用于在接收到所述第一存储体传输的第一数据后,将存储的第二数据更新为所述第一数据。
9.一种数据存储器,其特征在于,包括:第一存储体以及第二存储体;
所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;所述第二存储体包括寄存器堆;
所述多个第一存储位,用于响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据不同,将所述第一数据确定为待读取数据并读取;
所述多个第一存储位,还用于响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据相同,当前第一存储位未存储所述第一数据,将所述第二数据确定为待读取数据并读取。
10.一种数据存储方法,其特征在于,应用于数据存储器,所述数据存储器包括:第一存储体和第二存储体;所述第一存储体包括多个第一存储位;第二存储体包括多个与所述第一存储位分别对应的第二存储位;所述第二存储体包括寄存器堆;所述数据存储方法包括:
所述多个第一存储位响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据不同,在所述当前第一存储位中存储所述第一数据,并将对应第二存储位中的指示标识置为第一数值;
其中,所述指示标识用于指示所述第一数据与所述第二数据是否相同;
响应于待存储至当前第一存储位的第一数据与前一第一存储位存储的第二数据相同,将与所述当前第一存储位对应的第二存储位中的指示标识置为第二数值,且不在所述第一存储位存储所述第一数据;
所述数据存储器包括:比较器;所述比较器的输出端分别与所述第一存储体和所述第二存储体连接;
所述数据存储方法还包括:
所述比较器将所述当前第一存储位对应的第一数据、和所述前一第一存储位对应的第二数据进行比对;
响应于所述第一数据和所述第二数据不同,向所述当前第一存储位传输所述第一数据,并控制与所述当前第一存储位对应的第二存储位中的指示标识置为第一数值;
响应于所述第一数据和所述第二数据相同,控制与所述第一存储位对应的第二存储位中的指示标识置为第二数值。
11.一种数据读取方法,其特征在于,应用于数据存储器,所述数据存储器包括:第一存储体和第二存储体;所述第一存储体包括多个第一存储位;所述第二存储体包括与多个所述第一存储位分别对应的第二存储位;所述第二存储体包括寄存器堆;所述数据读取方法包括:
响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据不同,将所述第一数据确定为待读取数据并进行读取;
响应于待读取的当前第一存储位对应的第二存储位存储的指示标识表征所述当前第一存储位存储的第一数据与前一第一存储位存储的第二数据相同,当前第一存储位未存储所述第一数据,将所述第二数据确定为待读取数据并读取。
12.一种芯片,其特征在于,包括如权利要求1-8或者9任一项所述的数据存储器。
13.一种计算机设备,其特征在于,包括:处理器、存储器,及如权利要求1-8、或者9任一项所述的数据存储器,或者包括如权利要求12所述的芯片。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被计算机设备运行时,所述计算机设备执行如权利要求10所述的数据存储方法的步骤,或执行如权利要求11所述的数据读取方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110561399.0A CN113222807B (zh) | 2021-05-22 | 2021-05-22 | 数据存储器、数据存储、读取方法、芯片及计算机设备 |
PCT/CN2021/134304 WO2022247195A1 (zh) | 2021-05-22 | 2021-11-30 | 数据存储器、数据存储、读取方法、芯片及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110561399.0A CN113222807B (zh) | 2021-05-22 | 2021-05-22 | 数据存储器、数据存储、读取方法、芯片及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113222807A CN113222807A (zh) | 2021-08-06 |
CN113222807B true CN113222807B (zh) | 2023-12-19 |
Family
ID=77099349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110561399.0A Active CN113222807B (zh) | 2021-05-22 | 2021-05-22 | 数据存储器、数据存储、读取方法、芯片及计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113222807B (zh) |
WO (1) | WO2022247195A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113222807B (zh) * | 2021-05-22 | 2023-12-19 | 上海阵量智能科技有限公司 | 数据存储器、数据存储、读取方法、芯片及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102166886A (zh) * | 2011-05-05 | 2011-08-31 | 珠海天威技术开发有限公司 | 耗材芯片及其数据读写方法、耗材容器 |
CN102831930A (zh) * | 2012-08-20 | 2012-12-19 | 珠海天威技术开发有限公司 | 耗材芯片及耗材容器、耗材芯片的数据写入方法 |
CN111596863A (zh) * | 2020-05-20 | 2020-08-28 | 歌尔科技有限公司 | 一种数据读取方法、装置、设备及可读存储介质 |
CN112804532A (zh) * | 2021-01-07 | 2021-05-14 | 苏州浪潮智能科技有限公司 | 一种图像数据获取方法、系统及相关装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4381014B2 (ja) * | 2003-03-18 | 2009-12-09 | 株式会社ルネサステクノロジ | 半導体集積回路 |
CN111971660A (zh) * | 2018-06-05 | 2020-11-20 | 拉姆伯斯公司 | 高速缓存动态随机存取存储器 |
KR20200053204A (ko) * | 2018-11-08 | 2020-05-18 | 삼성전자주식회사 | 저장 장치, 저장 장치의 동작 방법 및 저장 장치를 제어하는 호스트의 동작 방법 |
CN111312309B (zh) * | 2020-01-10 | 2023-05-02 | 电子科技大学 | 一种提升铁电存储器读写次数的电路结构 |
CN113222807B (zh) * | 2021-05-22 | 2023-12-19 | 上海阵量智能科技有限公司 | 数据存储器、数据存储、读取方法、芯片及计算机设备 |
-
2021
- 2021-05-22 CN CN202110561399.0A patent/CN113222807B/zh active Active
- 2021-11-30 WO PCT/CN2021/134304 patent/WO2022247195A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102166886A (zh) * | 2011-05-05 | 2011-08-31 | 珠海天威技术开发有限公司 | 耗材芯片及其数据读写方法、耗材容器 |
CN102831930A (zh) * | 2012-08-20 | 2012-12-19 | 珠海天威技术开发有限公司 | 耗材芯片及耗材容器、耗材芯片的数据写入方法 |
CN111596863A (zh) * | 2020-05-20 | 2020-08-28 | 歌尔科技有限公司 | 一种数据读取方法、装置、设备及可读存储介质 |
CN112804532A (zh) * | 2021-01-07 | 2021-05-14 | 苏州浪潮智能科技有限公司 | 一种图像数据获取方法、系统及相关装置 |
Non-Patent Citations (1)
Title |
---|
王帆.一种量产模式同测DRAM芯片数据写入的方法.《科技创新导报》.2017,第14卷(第12期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
WO2022247195A1 (zh) | 2022-12-01 |
CN113222807A (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20100211835A1 (en) | Method for testing a memory device | |
US11455117B2 (en) | Data reading method, apparatus, and system, avoiding version rollback issues in distributed system | |
CN112487009B (zh) | 数据更新方法、装置、设备、存储介质及程序产品 | |
US20190361631A1 (en) | Storage device, chip and method for controlling storage device | |
CN113222807B (zh) | 数据存储器、数据存储、读取方法、芯片及计算机设备 | |
US11636285B2 (en) | Memory including examples of calculating hamming distances for neural network and data center applications | |
US20220075556A1 (en) | Memory systems including examples of calculating hamming distances for neural network and data center applications | |
CN110297764B (zh) | 漏洞测试模型训练方法和装置 | |
CN115470156A (zh) | 基于rdma的内存使用方法、系统、电子设备和存储介质 | |
CN107451070B (zh) | 一种数据的处理方法和服务器 | |
US10489350B2 (en) | Data compression with inline compression metadata | |
EP3343395A1 (en) | Data storage method and apparatus for mobile terminal | |
CN111930510B (zh) | 电子设备和数据处理方法 | |
US20110283068A1 (en) | Memory access apparatus and method | |
CN106940684B (zh) | 一种按比特写数据的方法及装置 | |
CN116192776A (zh) | 可自修复的报文保序方法、装置、终端及存储介质 | |
US20180054374A1 (en) | Trace information encoding apparatus, encoding method thereof, and readable computer medium | |
CN110008059B (zh) | 非易失性存储介质的数据更新方法、装置及存储介质 | |
CN110007856B (zh) | 数据存储方法、装置及闪存芯片 | |
US8572147B2 (en) | Method for implementing a bit-reversed increment in a data processing system | |
KR101486547B1 (ko) | Ldma방법을 이용한 ipc장치 | |
US12032960B2 (en) | Flexible support for device emulation and bank swapping | |
CN116056146B (zh) | 一种基于哈希数组的无线定位信号缓存传输方法及系统 | |
CN114036171B (zh) | 应用数据管理方法、装置、计算机设备和存储介质 | |
CN117667825A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40049951 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |