CN114077569A - 压缩数据的方法及设备、解压缩数据的方法及设备 - Google Patents

压缩数据的方法及设备、解压缩数据的方法及设备 Download PDF

Info

Publication number
CN114077569A
CN114077569A CN202010833377.0A CN202010833377A CN114077569A CN 114077569 A CN114077569 A CN 114077569A CN 202010833377 A CN202010833377 A CN 202010833377A CN 114077569 A CN114077569 A CN 114077569A
Authority
CN
China
Prior art keywords
data
current
label
data block
check code
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
CN202010833377.0A
Other languages
English (en)
Other versions
CN114077569B (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.)
Futaihua Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co Ltd
Original Assignee
Futaihua Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co 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 Futaihua Industry Shenzhen Co Ltd, Hon Hai Precision Industry Co Ltd filed Critical Futaihua Industry Shenzhen Co Ltd
Priority to CN202010833377.0A priority Critical patent/CN114077569B/zh
Priority to US17/405,519 priority patent/US11595059B2/en
Publication of CN114077569A publication Critical patent/CN114077569A/zh
Application granted granted Critical
Publication of CN114077569B publication Critical patent/CN114077569B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/6312Error control coding in combination with data compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6017Methods or arrangements to increase the throughput
    • H03M7/6029Pipelining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种压缩数据的方法,所述数据为可重构处理器中使用的待压缩数据,且所述待压缩数据具有多个数据块,所述方法包括:获取在可重构处理器中使用的当前数据块;计算当前数据块的当前校验码;比对当前校验码与前一个校验码;若当前校验码与前一个校验码不相同,标示所述当前数据块的标签为第一标签;若当前校验码与前一个校验码相同,标示所述当前数据块的标签为第二标签;保留标签为第一标签的数据块。本案还提供一种压缩数据的设备,一种解压缩数据的方法及设备,可避免数据量大所导致的数据传输时产生的较大的吞吐量,及数据长所导致的配置存储器占据可重构处理器的较大的区域。

Description

压缩数据的方法及设备、解压缩数据的方法及设备
技术领域
本发明涉及数据处理技术领域,具体涉及一种压缩数据的方法及设备、解压缩数据的方法及设备。
背景技术
目前,可重构处理器中的数据可能非常巨大,在进行数据传输时会产生较大的吞吐量。同时,可重构处理器是能够快速处理大规模功能的多个功能单元的硬件,可重构处理器通常将数据存储在配置存储器中。但是,由于可重构处理器中功能单元的数量很大,因此数据的长度也非常长,如此将会导致配置存储器会占据可重构处理器的较大的区域。因此,需要一种合适的压缩数据的方法及解压缩数据的方法来避免数据量大所导致的数据传输时产生的较大的吞吐量,及数据长所导致的配置存储器占据可重构处理器的较大的区域。
发明内容
鉴于此,有必要提供一种压缩数据的方法及设备、解压缩数据的方法及设备,可避免数据量大所导致的数据传输时产生的较大的吞吐量,及数据长所导致的配置存储器占据可重构处理器的较大的区域。
本申请的第一方面提供一种压缩数据的方法,所述数据为可重构处理器中使用的待压缩数据,且所述待压缩数据具有多个数据块,所述方法包括:
获取在可重构处理器中使用的当前数据块;
计算当前数据块的当前校验码;
比对当前校验码与前一个校验码;
若当前校验码与前一个校验码不相同,标示所述当前数据块的标签为第一标签;
若当前校验码与前一个校验码相同,标示所述当前数据块的标签为第二标签;
保留标签为第一标签的数据块。
较佳地,所述方法还包括:
忽略标签为第二标签的数据块。
较佳地,所述第一标签为1,所述第二标签为0。
较佳地,所述数据块是所述可重构处理器按预定的数据大小来获取的。
较佳地,所述方法还包括:
若所述当前校验码为第一个当前数据块的当前校验码,预设当前校验码为与前一个校验码不相同。
较佳地,所述标示所述当前数据块的标签包括:
按获取时间顺序标示所述当前数据块的标签;
所述保留标签为第一标签的数据块包括:
按获取时间顺序保留标签为第一标签的数据块。
本申请的第二方面提供一种解压缩数据的方法,所述数据为可重构处理器中使用的待解压缩数据,所述方法包括:
接收在可重构处理器中待解压缩的数据块及各标签;
从所述标签中获取当前标签;
若所述当前标签为第一标签,从所述待解压缩的数据块中获取所述当前标签对应的数据块;
若所述当前标签为第二标签,从所述待解压缩的数据块中获取所述当前标签前最近的为第一标签的标签对应的数据块。
较佳地,所述从所述标签中获取当前标签包括:
按标签标示顺序从所述标签中逐个获取所述当前标签。
本申请的第三方面提供一种压缩数据的设备,所述数据为可重构处理器中使用的待压缩数据,所述设备包括处理器及存储器,所述处理器用于执行所述存储器中存储的至少一个指令时实现如上任意一项所述的压缩数据的方法。
本申请的第四方面提供一种解压缩数据的设备,所述数据为可重构处理器中使用的待解压缩数据,所述设备包括处理器及存储器,所述处理器用于执行所述存储器中存储的至少一个指令时实现如上任意一项所述的解压缩数据的方法。
本案通过获取在可重构处理器中使用的当前数据块,计算当前数据块的当前校验码,比对当前校验码与前一个校验码,若当前校验码与前一个校验码不相同,标示所述当前数据块的标签为第一标签,若当前校验码与前一个校验码相同,标示所述当前数据块的标签为第二标签,保留标签为第一标签的数据块。同时,本案无需统计模型即可对所述数据进行无失真压缩,且节省了大量的硬件成本。此外,所述压缩数据的方法不仅可单独使用,还可与目前其他已知的压缩数据的方法同时使用,从而可提高压缩的速度。
本案通过接收在可重构处理器中待解压缩的数据块及各标签,从所述标签中获取当前标签,若所述当前标签为第一标签,从所述待解压缩的数据块中获取所述当前标签对应的数据块,若所述当前标签为第二标签,从所述待解压缩的数据块中获取所述当前标签前最近的为第一标签的标签对应的数据块。从而,本案无需统计模型即可对所述数据进行无失真解压缩。此外,所述解压缩数据的方法不仅可单独使用,还可与目前其他已知的解压缩数据的方法同时使用,从而可提高解压缩的速度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的压缩数据的方法的流程图。
图2A是在不同时间所获取的当前数据块;图2B是图2A中不同的当前数据块的当前校验码。
图3A是图2A中的标示各当前数据块的标签的示意图;图3B是图3A中保留标签为第一标签的数据块的示意图。
图4是本发明实施例二提供的解压缩数据的方法的流程图。
图5是图3B所示的保留的数据块解压缩后的数据块。
图6是本发明实施例三提供的压缩数据的设备的方框图。
图7是本发明实施例四提供的解压缩数据的设备的方框图。
如下具体实施方式将结合上述附图进一步说明本发明。
主要元件符号说明
压缩数据的设备 6
存储器 61
处理器 62
计算机可读指令 63
解压缩数据的设备 7
存储器 71
处理器 72
计算机可读指令 73
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
图1为本发明实施例一提供的压缩数据的方法的流程图。所述数据为可重构处理器中使用的待压缩数据,且所述待压缩数据具有多个数据块。所述压缩数据的方法可包括以下步骤:
S11:获取在可重构处理器中使用的当前数据块。
所述获取在可重构处理器中使用的当前数据块包括:在接收待压缩数据时,获取在可重构处理器中使用的当前数据块。所述接收待压缩数据可为所述可重构处理器从外部元件处接收所述待压缩数据,也可为所述可重构处理器内一个元件从另一个元件处接收所述待压缩数据。所述待压缩数据可包括配置数据及网络参数等。所述在接收待压缩数据时,获取在可重构处理器中使用的当前数据块可为:
例如在接收待压缩数据的连续初始10个数据时,获取从开始接收待压缩数据开始到第10个所接收的数据为当前数据块,在接收待压缩数据的第11个至第20个数据时,获取从第11个到第20个时的数据为当前数据块。其中,最初获取的10个数据所组成的当前数据块与第2次获取的10个数据所组成的当前数据块可相同或不相同。例如,如图2A所示,图2A示出了传输数据流时所获取的当前数据块。在图2A中,当前数据块A为获取的第一个数据块,当前数据块B为获取的第二个数据块,当前数据块C为获取的第三个数据块,当前数据块D为获取的第四个数据块,当前数据块E为获取的第五个数据块。当前数据块B与当前数据块A相同,当前数据块C与当前数据块B不相同,当前数据块D与当前数据块C相同,当前数据块E与当前数据块D相同。
在本实施例中,所述数据块是所述可重构处理器按预定的数据大小来获取的。在本实施例中,所述方法还包括:若所述待压缩数据剩下的最后一个数据块的数据大小小于所述预定的数据大小时,获取所述待压缩数据剩下的最后一个数据块为当前数据块。
S12:计算当前数据块的当前校验码。
所述计算当前数据块的当前校验码包括通过CRC检查码电路计算当前数据块的当前校验码。其中,当所述当前数据块相同时,所述当前校验码也相同,当所述当前数据块不相同时,所述当前校验码也不相同。例如,如图2B所示,图2B示出了图2A中不同的当前数据块的当前校验码。在图2B中,当前数据块A的当前校验码a为CRC1,当前数据块B的当前校验码b为CRC1,当前数据块C的当前校验码c为CRC2,当前数据块D的当前校验码d为CRC2,及当前数据块E的当前校验码e为CRC2。
在本案中,由于在接收待压缩数据时,获取在可重构处理器中使用的当前数据块,则可在所述待压缩数据接收完时,所述当前校验码即可同步产生完,从而减小了延迟时间,使得在数据处理过程中,保持了数据的一致性。
S13:比对当前校验码与前一个校验码。
所述比对当前校验码与前一个校验码可包括比对当前校验码与前一个校验码是否完全相同及实质相同。所述实质相同可通过预先设置的规则来确定。例如字体及字号存在差别,可设置为实质相同。
S14:若当前校验码与前一个校验码不相同,标示所述当前数据块的标签为第一标签。
所述当前校验码与前一个校验码不相同代表所述当前校验码对应的当前数据块与前一个校验码对应的前一个数据块不相同。所述不相同包括完全不相同及实质不相同。所述方法还包括:若所述当前校验码为第一个当前数据块的当前校验码,预设当前校验码为与前一个校验码不相同。
S15:若当前校验码与前一个校验码相同,标示所述当前数据块的标签为第二标签。
所述当前校验码与前一个校验码相同代表所述当前校验码对应的当前数据块与前一个校验码对应的前一个数据块相同。所述相同包括完全相同及实质相同。
例如,在第60次获取的当前数据块的当前校验码与第59次获取的前一个数据块的前一个校验码相同,则在第60次获取的当前数据块的标签为第二标签,在第61次获取的当前数据块的当前校验码与在第60次获取的前一个数据块的前一个校验码相同,则在第61次获取的当前数据块的标签为第二标签。
在本实施例中,所述标示所述当前数据块的标签包括:按获取时间顺序标示所述当前数据块的标签。所述按获取时间顺序标示的当前数据块的标签包括为第一标签的当前数据块的标签及为第二标签的当前数据块的标签。从而,所述当前数据块的标签按所述当前数据块的获取时间顺序标示。在本实施例中,所述第一标签为1,所述第二标签为0。例如,如图3A所示,图3A示出了标示的图2A中的各当前数据块的标签。在图3A中,当前数据块A的标签100为1,当前数据块B的标签200为0,当前数据块C的标签300为1,当前数据块D的标签400为0,及当前数据块E的标签500为0。其中,当前数据块A的标签1存储在当前数据块B的标签0的前面,当前数据块B的标签0存储在当前数据块C的标签1的前面,当前数据块C的标签1存储在当前数据块D的标签0的前面,当前数据块D的标签0存储在当前数据块E的标签0的前面。在其他实施例中,所述第一标签为0,所述第二标签为1。
S16:保留标签为第一标签的数据块。
所述标签为第一标签的数据块为与前一个数据块不相同的数据块。所述保留标签为第一标签的数据块包括:按获取时间顺序保留标签为第一标签的数据块。从而,标签为第一标签的所述数据块按所述数据块的获取时间顺序保留。例如,如图3B所示,图3B示出了保留的图3A中标签为第一标签的数据块。在图3B中,标签为第一标签的数据块A存储在标签为第一标签的数据块C的前面。
在本实施例中,所述方法还包括:
忽略标签为第二标签的数据块。
所述标签为第二标签的数据块为与前一个数据块相同的数据块。所述忽略标签为第二标签的数据块即为不保留标签为第二标签的数据块。
实施例一通过获取在可重构处理器中使用的当前数据块,计算当前数据块的当前校验码,比对当前校验码与前一个校验码,若当前校验码与前一个校验码不相同,标示所述当前数据块的标签为第一标签,若当前校验码与前一个校验码相同,标示所述当前数据块的标签为第二标签,保留标签为第一标签的数据块。从而,本案可避免数据量大所导致的数据传输时产生的较大的吞吐量,及数据长所导致的配置存储器占据可重构处理器的较大的区域。同时,本案无需统计模型即可对所述数据进行无失真压缩,且仅需要CRC检查码电路即可对所述数据进行压缩,节省了大量的硬件成本。此外,所述压缩数据的方法不仅可单独使用,还可与目前其他已知的压缩数据的方法,例如统计方案或字典方案,同时使用,从而可提高压缩的速度。
图4是本发明实施例二提供的解压缩数据的方法的流程图。所述数据为可重构处理器中使用的待解压缩数据。所述解压缩数据的方法可包括以下步骤:
S41:接收在可重构处理器中待解压缩的数据块及各标签。
所述接收在可重构处理器中待解压缩的数据块可为外部元件从所述可重构处理器处接收在可重构处理器中待解压缩的数据块,也可为所述可重构处理器内一个元件从另一个元件处接收在可重构处理器中待解压缩的数据块。所述接收在可重构处理器中待解压缩的数据块及各标签可为,例如接收图3B所示的在可重构处理器中保留的数据块及图3A所示的标签。
S42:从所述标签中获取当前标签。
所述从所述标签中获取当前标签包括:按标签标示顺序从所述标签中逐个获取所述当前标签。例如,如图3A所示,第一个标签为标签100、第二个标签为标签200、第三个标签为标签300、第四个标签为标签400及第五个标签为标签500。所述按标签标示顺序从所述标签中逐个获取所述当前标签可为,例如第1秒获取所述标签100的值1为所述当前标签,第11秒获取所述标签200的值0为所述当前标签。
S43:若所述当前标签为第一标签,从所述待解压缩的数据块中获取所述当前标签对应的数据块。
所述当前标签为1代表所述当前标签所对应的当前数据块与前一个数据块不相同。此时,所述压缩的数据块中存储有所述当前标签对应的数据块。例如,如图5所示,图5示出了图3B所示的压缩的数据块解压缩后的数据块。在图5中,若第一个标签100为当前标签,此时,从图3B所示的压缩的数据块中获取所述第一个标签100对应的数据块A。每个标签对应的数据块的大小基本一致。具体地,所述待解压缩的数据块中除了最后一个数据块的其他数据块的数据大小相同,且每个可与所述待解压缩的数据块中最后一个数据块的数据大小相同或不相同。
S44:若所述当前标签为第二标签,从所述待解压缩的数据块中获取所述当前标签前最近的为第一标签的标签对应的数据块。
所述当前标签为第二标签代表所述当前标签所对应的当前数据块与前一个数据块相同。其中,所述当前数据块可不仅与前一个数据块相同,还可与前二个数据块或者前N个数据块相同。所述N为大于二的任意整数。所述当前标签前最近的为第一标签的标签可为,例如,如图5所示,当前标签为标签500,此时,所述标签500前最近的为第一标签的标签为300,此时,从图3B所示的保留的数据块中获取所述标签500前最近的为第一标签的标签300对应的数据块C。
实施例二通过接收在可重构处理器中待解压缩的数据块及各标签,从所述标签中获取当前标签,若所述当前标签为第一标签,从所述待解压缩的数据块中获取所述当前标签对应的数据块,若所述当前标签为第二标签,从所述待解压缩的数据块中获取所述当前标签前最近的为第一标签的标签对应的数据块。从而,本案无需统计模型即可对所述数据进行无失真解压缩。此外,所述解压缩数据的方法不仅可单独使用,还可与目前其他已知的解压缩数据的方法,例如统计方案或字典方案,同时使用,从而可提高解压缩的速度。
图6是本发明实施例三提供的压缩数据的设备的方框图。所述压缩数据的设备6包括:存储器61、至少一个处理器62、及存储在所述存储器61中并可在所述至少一个处理器62上运行的计算机可读指令63。所述至少一个处理器62执行所述计算机可读指令63时实现上述压缩数据的方法实施例中的步骤。
示例性的,所述计算机可读指令63可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述至少一个处理器62执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令63在所述压缩数据的设备6中的执行过程。
所述压缩数据的设备6可以为任何一种产品,例如,译码器、可重构处理器等。本领域技术人员可以理解,所述示意图6仅仅是压缩数据的设备6的示例,并不构成对压缩数据的设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
所述至少一个处理器62可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。该处理器62可以是微处理器或者该处理器62也可以是任何常规的处理器等,所述处理器62是所述压缩数据的设备6的控制中心,利用各种接口和线路连接整个压缩数据的设备6的各个部分。
所述存储器61可用于存储所述计算机可读指令63和/或模块/单元,所述处理器62通过运行或执行存储在所述存储器61内的计算机可读指令和/或模块/单元,以及调用存储在存储器61内的数据,实现所述压缩数据的设备6的各种功能。所述存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据压缩数据的设备6的使用所创建的数据(比如音频数据等)等。此外,存储器61可以包括非易失性计算机可读存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。所述压缩数据的设备6集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非易失性计算机可读存储介质中。
图7是本发明实施例四提供的解压缩数据的设备的方框图。所述解压缩数据的设备7包括:存储器71、至少一个处理器72、及存储在所述存储器71中并可在所述至少一个处理器72上运行的计算机可读指令73。所述至少一个处理器72执行所述计算机可读指令73时实现上述压缩数据的方法实施例中的步骤。
示例性的,所述计算机可读指令73可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器71中,并由所述至少一个处理器72执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令73在所述解压缩数据的设备7中的执行过程。
所述解压缩数据的设备7可以为任何一种产品,例如,译码器、可重构处理器等。本领域技术人员可以理解,所述示意图7仅仅是解压缩数据的设备7的示例,并不构成对解压缩数据的设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
所述至少一个处理器72可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。该处理器72可以是微处理器或者该处理器72也可以是任何常规的处理器等,所述处理器72是所述解压缩数据的设备7的控制中心,利用各种接口和线路连接整个解压缩数据的设备7的各个部分。
所述存储器71可用于存储所述计算机可读指令73和/或模块/单元,所述处理器72通过运行或执行存储在所述存储器71内的计算机可读指令和/或模块/单元,以及调用存储在存储器71内的数据,实现所述解压缩数据的设备7的各种功能。所述存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据解压缩数据的设备7的使用所创建的数据(比如音频数据等)等。此外,存储器71可以包括非易失性计算机可读存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。所述解压缩数据的设备7集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非易失性计算机可读存储介质中。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神范围。

Claims (10)

1.一种压缩数据的方法,所述数据为可重构处理器中使用的待压缩数据,且所述待压缩数据具有多个数据块,其特征在于,所述方法包括:
获取在可重构处理器中使用的当前数据块;
计算当前数据块的当前校验码;
比对当前校验码与前一个校验码;
若当前校验码与前一个校验码不相同,标示所述当前数据块的标签为第一标签;
若当前校验码与前一个校验码相同,标示所述当前数据块的标签为第二标签;
保留标签为第一标签的数据块。
2.如权利要求1所述的压缩数据的方法,其特征在于,所述方法还包括:
忽略标签为第二标签的数据块。
3.如权利要求1所述的压缩数据的方法,其特征在于,所述第一标签为1,所述第二标签为0。
4.如权利要求1所述的压缩数据的方法,其特征在于,所述数据块是所述可重构处理器按预定的数据大小来获取的。
5.如权利要求1所述的压缩数据的方法,其特征在于,所述方法还包括:
若所述当前校验码为第一个当前数据块的当前校验码,预设当前校验码为与前一个校验码不相同。
6.如权利要求1所述的压缩数据的方法,其特征在于:
所述标示所述当前数据块的标签包括:
按获取时间顺序标示所述当前数据块的标签;
所述保留标签为第一标签的数据块包括:
按获取时间顺序保留标签为第一标签的数据块。
7.一种解压缩数据的方法,所述数据为可重构处理器中使用的待解压缩数据,其特征在于,所述方法包括:
接收在可重构处理器中待解压缩的数据块及各标签;
从所述标签中获取当前标签;
若所述当前标签为第一标签,从所述待解压缩的数据块中获取所述当前标签对应的数据块;
若所述当前标签为第二标签,从所述待解压缩的数据块中获取所述当前标签前最近的为第一标签的标签对应的数据块。
8.如权利要求7所述的解压缩数据的方法,其特征在于,所述从所述标签中获取当前标签包括:
按标签标示顺序从所述标签中逐个获取所述当前标签。
9.一种压缩数据的设备,所述数据为可重构处理器中使用的待压缩数据,其特征在于,所述设备包括处理器及存储器,所述处理器用于执行所述存储器中存储的至少一个指令时实现如权利要求1至6中任意一项所述的压缩数据的方法。
10.一种解压缩数据的设备,所述数据为可重构处理器中使用的待解压缩数据,其特征在于,所述设备包括处理器及存储器,所述处理器用于执行所述存储器中存储的至少一个指令时实现如权利要求7至8中任意一项所述的解压缩数据的方法。
CN202010833377.0A 2020-08-18 2020-08-18 压缩数据的方法及设备、解压缩数据的方法及设备 Active CN114077569B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010833377.0A CN114077569B (zh) 2020-08-18 2020-08-18 压缩数据的方法及设备、解压缩数据的方法及设备
US17/405,519 US11595059B2 (en) 2020-08-18 2021-08-18 Method and device for compressing data, and method and device for decompressing data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010833377.0A CN114077569B (zh) 2020-08-18 2020-08-18 压缩数据的方法及设备、解压缩数据的方法及设备

Publications (2)

Publication Number Publication Date
CN114077569A true CN114077569A (zh) 2022-02-22
CN114077569B CN114077569B (zh) 2023-07-18

Family

ID=80271115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010833377.0A Active CN114077569B (zh) 2020-08-18 2020-08-18 压缩数据的方法及设备、解压缩数据的方法及设备

Country Status (2)

Country Link
US (1) US11595059B2 (zh)
CN (1) CN114077569B (zh)

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609442A (zh) * 2010-12-28 2012-07-25 微软公司 用于数据去重复的自适应索引
CN103403717A (zh) * 2013-01-09 2013-11-20 华为技术有限公司 一种数据处理方法及装置
US20130318288A1 (en) * 2011-12-20 2013-11-28 Jawad B. Khan Method and system for data de-duplication
CN103577278A (zh) * 2012-07-30 2014-02-12 国际商业机器公司 用于数据备份的方法和系统
US9063664B1 (en) * 2012-12-18 2015-06-23 Emc Corporation Method and system for processing checksum of a data stream to optimize deduplication
CN105045783A (zh) * 2013-12-07 2015-11-11 庄颢 含冗余的数据压缩与解压缩的系统和方法
CN105912622A (zh) * 2016-04-05 2016-08-31 重庆大学 一种针对无损压缩文件的数据去重方法
CN106648955A (zh) * 2016-11-15 2017-05-10 杭州华为数字技术有限公司 压缩方法及相关装置
CN107111623A (zh) * 2014-10-21 2017-08-29 华为技术有限公司 用于基于词典的压缩的并行历史搜索和编码
CN107430602A (zh) * 2015-12-29 2017-12-01 华为技术有限公司 重复数据删除方法及存储设备
CN107506153A (zh) * 2017-09-26 2017-12-22 深信服科技股份有限公司 一种数据压缩方法、数据解压方法及相关系统
CN108781213A (zh) * 2016-03-14 2018-11-09 华为技术有限公司 一种用于传输数据的方法、装置和系统
CN109697021A (zh) * 2017-10-23 2019-04-30 阿里巴巴集团控股有限公司 一种磁盘快照的数据处理方法及装置
CN110795269A (zh) * 2018-08-03 2020-02-14 阿里巴巴集团控股有限公司 一种数据恢复验证方法、装置及设备
CN111124939A (zh) * 2018-10-31 2020-05-08 深信服科技股份有限公司 一种基于全闪存阵列的数据压缩方法及系统
CN111158948A (zh) * 2019-12-30 2020-05-15 深信服科技股份有限公司 基于去重的数据存储与校验方法、装置及存储介质
CN111262587A (zh) * 2018-11-30 2020-06-09 康泰医学系统(秦皇岛)股份有限公司 一种数据压缩方法、装置、设备及计算机可读存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7007203B2 (en) * 2002-08-02 2006-02-28 Motorola, Inc. Error checking in a reconfigurable logic signal processor (RLSP)
US20110055471A1 (en) 2009-08-28 2011-03-03 Jonathan Thatcher Apparatus, system, and method for improved data deduplication
US8332722B1 (en) * 2010-08-11 2012-12-11 Microelectronics Research and Development Corporation Method and architecture for performing scrubbing of an FPGA's configuration memory
US20140281155A1 (en) 2013-03-14 2014-09-18 Lsi Corporation Storage device assisted data de-duplication
US9852076B1 (en) 2014-12-18 2017-12-26 Violin Systems Llc Caching of metadata for deduplicated LUNs
WO2020148746A1 (en) * 2019-01-20 2020-07-23 Arilou Information Security Technologies Ltd. System and method for data compression based on data position in frames structure
US10749545B1 (en) * 2019-08-30 2020-08-18 Advanced Micro Devices, Inc. Compressing tags in software and hardware semi-sorted caches

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609442A (zh) * 2010-12-28 2012-07-25 微软公司 用于数据去重复的自适应索引
US20130318288A1 (en) * 2011-12-20 2013-11-28 Jawad B. Khan Method and system for data de-duplication
CN103577278A (zh) * 2012-07-30 2014-02-12 国际商业机器公司 用于数据备份的方法和系统
US9063664B1 (en) * 2012-12-18 2015-06-23 Emc Corporation Method and system for processing checksum of a data stream to optimize deduplication
CN103403717A (zh) * 2013-01-09 2013-11-20 华为技术有限公司 一种数据处理方法及装置
CN105045783A (zh) * 2013-12-07 2015-11-11 庄颢 含冗余的数据压缩与解压缩的系统和方法
CN107111623A (zh) * 2014-10-21 2017-08-29 华为技术有限公司 用于基于词典的压缩的并行历史搜索和编码
CN107430602A (zh) * 2015-12-29 2017-12-01 华为技术有限公司 重复数据删除方法及存储设备
CN108781213A (zh) * 2016-03-14 2018-11-09 华为技术有限公司 一种用于传输数据的方法、装置和系统
CN105912622A (zh) * 2016-04-05 2016-08-31 重庆大学 一种针对无损压缩文件的数据去重方法
CN106648955A (zh) * 2016-11-15 2017-05-10 杭州华为数字技术有限公司 压缩方法及相关装置
CN107506153A (zh) * 2017-09-26 2017-12-22 深信服科技股份有限公司 一种数据压缩方法、数据解压方法及相关系统
CN109697021A (zh) * 2017-10-23 2019-04-30 阿里巴巴集团控股有限公司 一种磁盘快照的数据处理方法及装置
CN110795269A (zh) * 2018-08-03 2020-02-14 阿里巴巴集团控股有限公司 一种数据恢复验证方法、装置及设备
CN111124939A (zh) * 2018-10-31 2020-05-08 深信服科技股份有限公司 一种基于全闪存阵列的数据压缩方法及系统
CN111262587A (zh) * 2018-11-30 2020-06-09 康泰医学系统(秦皇岛)股份有限公司 一种数据压缩方法、装置、设备及计算机可读存储介质
CN111158948A (zh) * 2019-12-30 2020-05-15 深信服科技股份有限公司 基于去重的数据存储与校验方法、装置及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
丛丽晖;何国强;夏秀峰;: "PDM中基于cuckoo filter的数据完整性校验算法设计与实现", 计算机应用与软件 *
杨天明;吴海涛;: "一种批处理块级数据去重方法", 计算机应用与软件 *

Also Published As

Publication number Publication date
US11595059B2 (en) 2023-02-28
US20220060197A1 (en) 2022-02-24
CN114077569B (zh) 2023-07-18

Similar Documents

Publication Publication Date Title
US7616137B2 (en) Method and apparatus for compression and decompression of an executable code with a RISC processor
CN107516534B (zh) 一种语音信息的比对方法、装置及终端设备
KR960032912A (ko) 색인된 칼라 이미지데이타를 위한 데이타압축장치 및 방법
JP2009542092A (ja) データ圧縮の方法
JP6645013B2 (ja) 符号化プログラム、符号化方法、符号化装置および伸長方法
US8849051B2 (en) Decoding variable length codes in JPEG applications
CN110545446B (zh) 一种桌面图像编码、解码方法、相关装置及存储介质
CN114077569A (zh) 压缩数据的方法及设备、解压缩数据的方法及设备
TWI758825B (zh) 壓縮資料之方法及設備、解壓縮資料之方法及設備
CN111384969B (zh) 编码方法、处理器、编码装置及存储介质
US8488894B2 (en) Method and system for dot-matrix font data compression and decompression
CN110545435B (zh) 一种基于概率模型的桌面像素编码方法、装置及存储介质
CN110944212A (zh) 一种视频帧重构方法、装置及终端设备
CN106874979B (zh) 一种条形码处理、显示、读取方法和装置
CN111508041A (zh) 一种hmi文字压缩及渲染的方法、装置及电子设备
CN111836051B (zh) 一种桌面图像编码、解码方法及相关装置
US10491241B1 (en) Data compression scheme utilizing a repetitive value within the data stream
CN114365096A (zh) 内存分配方法、装置、终端及计算机可读存储介质
CN113157226A (zh) 远程数据的显示方法、装置、设备及机器可读存储介质
CN111083500A (zh) 一种视频帧重构方法、装置及终端设备
KR100728918B1 (ko) 이진영상을 고속 압축하는 방법 및 장치, 이진영상을 고속 복원하는 방법 및 장치, 이진영상을 고속 압축 및 복원하는 시스템 그리고 그 방법
CN109587490B (zh) 一种Tile分片填充方法、装置、设备、存储介质和解码方法
JP3130721B2 (ja) 2値画像圧縮伸張処理システム及び2値画像切出し方法
US12034462B2 (en) Compressing probability tables for entropy coding
CN110892722A (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