TWI758825B - Method and device of compressing configuration data, and method and device of decompressing configuration data - Google Patents

Method and device of compressing configuration data, and method and device of decompressing configuration data Download PDF

Info

Publication number
TWI758825B
TWI758825B TW109128149A TW109128149A TWI758825B TW I758825 B TWI758825 B TW I758825B TW 109128149 A TW109128149 A TW 109128149A TW 109128149 A TW109128149 A TW 109128149A TW I758825 B TWI758825 B TW I758825B
Authority
TW
Taiwan
Prior art keywords
data
current
data block
label
tag
Prior art date
Application number
TW109128149A
Other languages
Chinese (zh)
Other versions
TW202209102A (en
Inventor
廖仁豪
Original Assignee
鴻海精密工業股份有限公司
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 鴻海精密工業股份有限公司 filed Critical 鴻海精密工業股份有限公司
Priority to TW109128149A priority Critical patent/TWI758825B/en
Publication of TW202209102A publication Critical patent/TW202209102A/en
Application granted granted Critical
Publication of TWI758825B publication Critical patent/TWI758825B/en

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

A method of compressing configuration data is provided. The configuration data is pre-compressed data used in a reconfigurable processor. The pre-compressed data includes a number of data blocks. The method includes obtaining a current data block used in the reconfigurable processor, and calculating a current CRC of the current data block. The method further includes comparing the current CRC with a previous CRC, indicating that a tag of the current data block is a first tag if the current CRC is different from the previous CRC, and indicating that the tag of the current data block is a second tag if the current CRC is the same as the previous CRC. The method further includes saving the data block with the first tag. A device of compressing configuration data, a method of decompressing configuration data, a device of decompressing configuration data are also provided.

Description

壓縮資料之方法及設備、解壓縮資料之方法及設備Method and device for compressing data, method and device for decompressing data

本發明涉及資料處理技術領域,具體涉及一種壓縮資料之方法及設備、解壓縮資料之方法及設備。The present invention relates to the technical field of data processing, in particular to a method and device for compressing data, and a method and device for decompressing data.

目前,可重構處理器中之資料可能非常巨大,在進行資料傳輸時會產生較大之輸送量。同時,可重構處理器是能夠快速處理大規模功能之多個功能單元之硬體,可重構處理器通常將資料存儲在配置記憶體中。但是,由於可重構處理器中功能單元之數量很大,因此資料之長度也非常長,如此將會導致配置記憶體會佔據可重構處理器之較大之區域。因此,需要一種合適之壓縮資料之方法及解壓縮資料之方法來避免資料量大所導致之資料傳輸時產生之較大之輸送量,及資料長所導致之配置記憶體佔據可重構處理器之較大之區域。At present, the data in the reconfigurable processor can be very large, and a large amount of traffic is generated when the data is transferred. Meanwhile, a reconfigurable processor is hardware capable of rapidly processing multiple functional units of large-scale functions, and a reconfigurable processor usually stores data in a configuration memory. However, due to the large number of functional units in the reconfigurable processor, the length of the data is also very long, which will cause the configuration memory to occupy a larger area of the reconfigurable processor. Therefore, a suitable method for compressing data and decompressing data is needed to avoid the large amount of data transmission caused by the large amount of data and the configuration memory occupying the reconfigurable processor due to the long data volume. larger area.

鑒於此,有必要提供一種壓縮資料之方法及設備、解壓縮資料之方法及設備,可避免資料量大所導致之資料傳輸時產生之較大之輸送量,及資料長所導致之配置記憶體佔據可重構處理器之較大之區域。In view of this, it is necessary to provide a method and device for compressing data, and a method and device for decompressing data, which can avoid the large amount of data transmission caused by the large amount of data and the configuration memory occupation caused by the long data. Larger area of a reconfigurable processor.

本申請之第一方面提供一種壓縮資料之方法,所述資料為可重構處理器中使用之待壓縮資料,且所述待壓縮資料具有多個資料塊,所述方法包括:A first aspect of the present application provides a method for compressing data. The data is to-be-compressed data used in a reconfigurable processor, and the to-be-compressed data has a plurality of data blocks. The method includes:

獲取在可重構處理器中使用之當前資料塊;Get the current data block used in the reconfigurable processor;

計算當前資料塊之當前校驗碼;Calculate the current check code of the current data block;

比對當前校驗碼與前一個校驗碼;Compare the current check code with the previous check code;

若當前校驗碼與前一個校驗碼不相同,標示所述當前資料塊之標籤為第一標籤;If the current check code is different from the previous check code, marking the label of the current data block as the first label;

若當前校驗碼與前一個校驗碼相同,標示所述當前資料塊之標籤為第二標籤;If the current check code is the same as the previous check code, marking the label of the current data block as the second label;

保留標籤為第一標籤之資料塊。The data block whose label is the first label is reserved.

較佳地,所述方法還包括:Preferably, the method also includes:

忽略標籤為第二標籤之資料塊。Data blocks with the label second label are ignored.

較佳地,所述第一標籤為1,所述第二標籤為0。Preferably, the first label is 1, and the second label is 0.

較佳地,所述資料塊是所述可重構處理器按預定之資料大小來獲取之。Preferably, the data block is obtained by the reconfigurable processor according to a predetermined data size.

較佳地,所述方法還包括:Preferably, the method also includes:

若所述當前校驗碼為第一個當前資料塊之當前校驗碼,預設當前校驗碼為與前一個校驗碼不相同。If the current check code is the current check code of the first current data block, the preset current check code is different from the previous check code.

較佳地,所述標示所述當前資料塊之標籤包括:Preferably, the label indicating the current data block includes:

按獲取時間順序標示所述當前資料塊之標籤;Label the current data block in the order of acquisition time;

所述保留標籤為第一標籤之資料塊包括:The data block whose reserved tag is the first tag includes:

按獲取時間順序保留標籤為第一標籤之資料塊。The data block whose label is the first label is reserved in the order of acquisition time.

本申請之第二方面提供一種解壓縮資料之方法,所述資料為可重構處理器中使用之待解壓縮資料,所述方法包括:A second aspect of the present application provides a method for decompressing data, the data being to-be-decompressed data used in a reconfigurable processor, the method comprising:

接收在可重構處理器中待解壓縮之資料塊及各標籤;receiving data blocks and tags to be decompressed in the reconfigurable processor;

從所述標籤中獲取當前標籤;Get the current tag from the tag;

若所述當前標籤為第一標籤,從所述待解壓縮之資料塊中獲取所述當前標籤對應之資料塊;If the current tag is the first tag, obtain the data block corresponding to the current tag from the data block to be decompressed;

若所述當前標籤為第二標籤,從所述待解壓縮之資料塊中獲取所述當前標籤前最近之為第一標籤之標籤對應之資料塊。If the current tag is the second tag, the data block corresponding to the tag of the first tag that is closest to the current tag is obtained from the data block to be decompressed.

較佳地,所述從所述標籤中獲取當前標籤包括:Preferably, the obtaining the current label from the label includes:

按標籤標示順序從所述標籤中逐個獲取所述當前標籤。The current tags are acquired one by one from the tags in the order of tag marking.

本申請之第三方面提供一種壓縮資料之設備,所述資料為可重構處理器中使用之待壓縮資料,所述設備包括處理器及記憶體,所述處理器用於執行所述記憶體中存儲之至少一個指令時實現如上任意一項所述之壓縮資料之方法。A third aspect of the present application provides an apparatus for compressing data, the data being data to be compressed for use in a reconfigurable processor, the apparatus includes a processor and a memory, the processor is configured to execute the data in the memory The stored at least one instruction implements the method of compressing data as described in any of the above.

本申請之第四方面提供一種解壓縮資料之設備,所述資料為可重構處理器中使用之待解壓縮資料,所述設備包括處理器及記憶體,所述處理器用於執行所述記憶體中存儲之至少一個指令時實現如上任意一項所述之解壓縮資料之方法。A fourth aspect of the present application provides an apparatus for decompressing data, the data being data to be decompressed for use in a reconfigurable processor, the apparatus comprising a processor and a memory, the processor being used to execute the memory At least one instruction stored in the body implements the method of decompressing data as described in any of the above.

本案藉由獲取在可重構處理器中使用之當前資料塊,計算當前資料塊之當前校驗碼,比對當前校驗碼與前一個校驗碼,若當前校驗碼與前一個校驗碼不相同,標示所述當前資料塊之標籤為第一標籤,若當前校驗碼與前一個校驗碼相同,標示所述當前資料塊之標籤為第二標籤,保留標籤為第一標籤之資料塊。同時,本案無需統計模型即可對所述資料進行無失真壓縮,且節省了大量之硬體成本。此外,所述壓縮資料之方法不僅可單獨使用,還可與目前其他已知之壓縮資料之方法同時使用,從而可提高壓縮之速度。In this case, the current data block used in the reconfigurable processor is obtained, the current check code of the current data block is calculated, and the current check code and the previous check code are compared. If the code is different, the label indicating the current data block is the first label. If the current check code is the same as the previous check code, the label indicating the current data block is the second label, and the reserved label is the first label. data block. At the same time, in this case, the data can be compressed without distortion without a statistical model, and a lot of hardware costs can be saved. In addition, the method of compressing data can not only be used alone, but also can be used simultaneously with other known methods of compressing data, so that the speed of compression can be improved.

本案藉由接收在可重構處理器中待解壓縮之資料塊及各標籤,從所述標籤中獲取當前標籤,若所述當前標籤為第一標籤,從所述待解壓縮之資料塊中獲取所述當前標籤對應之資料塊,若所述當前標籤為第二標籤,從所述待解壓縮之資料塊中獲取所述當前標籤前最近之為第一標籤之標籤對應之資料塊。從而,本案無需統計模型即可對所述資料進行無失真解壓縮。此外,所述解壓縮資料之方法不僅可單獨使用,還可與目前其他已知之解壓縮資料之方法同時使用,從而可提高解壓縮之速度。In this case, by receiving the data block to be decompressed and each label in the reconfigurable processor, the current label is obtained from the label, and if the current label is the first label, the data block to be decompressed is obtained from the data block. Acquire the data block corresponding to the current tag, and if the current tag is the second tag, acquire the data block corresponding to the tag of the first tag before the current tag from the data block to be decompressed. Thus, in this case, the data can be decompressed without a distortion without a statistical model. In addition, the method for decompressing data can not only be used alone, but also can be used simultaneously with other known methods for decompressing data, so that the speed of decompression can be improved.

為了能夠更清楚地理解本發明之上述目的、特徵和優點,下面結合附圖和具體實施例對本發明進行詳細描述。需要說明之是,在不衝突之情況下,本申請之實施例及實施例中之特徵可以相互組合。In order to more clearly understand the above objects, features and advantages of the present invention, the present invention will be described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that the embodiments of the present application and the features of the embodiments may be combined with each other without conflict.

在下面之描述中闡述了很多具體細節以便於充分理解本發明,所描述之實施例僅是本發明一部分實施例,而不是全部之實施例。基於本發明中之實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得之所有其他實施例,都屬於本發明保護之範圍。In the following description, many specific details are set forth in order to facilitate a full understanding of the present invention, and the described embodiments are only some, but not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

除非另有定義,本文所使用之所有之技術和科學術語與屬於本發明之技術領域之技術人員通常理解之含義相同。本文中在本發明之說明書中所使用之術語只是為了描述具體之實施例之目的,不是旨在於限制本發明。Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. The terms used herein in the description of the present invention are for the purpose of describing specific embodiments only, and are not intended to limit the present invention.

圖1為本發明實施例一提供之壓縮資料之方法之流程圖。所述資料為可重構處理器中使用之待壓縮資料,且所述待壓縮資料具有多個資料塊。所述壓縮資料之方法可包括以下步驟:FIG. 1 is a flowchart of a method for compressing data provided by Embodiment 1 of the present invention. The data is data to be compressed for use in the reconfigurable processor, and the data to be compressed has a plurality of data blocks. The method of compressing data may include the following steps:

S11:獲取在可重構處理器中使用之當前資料塊。S11: Acquire the current data block used in the reconfigurable processor.

所述獲取在可重構處理器中使用之當前資料塊包括:在接收待壓縮資料時,獲取在可重構處理器中使用之當前資料塊。所述接收待壓縮資料可為所述可重構處理器從外部元件處接收所述待壓縮資料,也可為所述可重構處理器內一個元件從另一個元件處接收所述待壓縮資料。所述待壓縮資料可包括配置資料及網路參數等。所述在接收待壓縮資料時,獲取在可重構處理器中使用之當前資料塊可為:The acquiring the current data block used in the reconfigurable processor includes: when receiving the data to be compressed, acquiring the current data block used in the reconfigurable processor. The receiving of the data to be compressed may be that the reconfigurable processor receives the data to be compressed from an external element, or it may be that one element in the reconfigurable processor receives the data to be compressed from another element . The data to be compressed may include configuration data and network parameters. When receiving the data to be compressed, obtaining the current data block used in the reconfigurable processor may be:

例如在接收待壓縮資料之連續初始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相同。For example, when receiving the initial 10 consecutive data of the data to be compressed, the current data block is obtained from the beginning of receiving the data to be compressed to the 10th data received. When receiving the 11th to 20th data of the data to be compressed, The data obtained from the 11th to the 20th time is the current data block. Wherein, the current data block composed of the 10 data obtained initially and the current data block composed of the 10 data obtained for the second time may be the same or different. For example, as shown in FIG. 2A , FIG. 2A shows the current data block acquired during the data transmission process. In FIG. 2A , the current data block A is the first data block obtained, the current data block B is the second data block obtained, the current data block C is the third data block obtained, and the current data block D is the obtained data block The fourth data block, the current data block E is the fifth data block obtained. The current data block B is the same as the current data block A, the current data block C is different from the current data block B, the current data block D is the same as the current data block C, and the current data block E is the same as the current data block D.

在本實施例中,所述資料塊是所述可重構處理器按預定之資料大小來獲取之。在本實施例中,所述方法還包括:若所述待壓縮資料剩下之最後一個資料塊之資料大小小於所述預定之資料大小時,獲取所述待壓縮資料剩下之最後一個資料塊為當前資料塊。In this embodiment, the data block is obtained by the reconfigurable processor according to a predetermined data size. In this embodiment, the method further includes: if the data size of the last remaining data block of the data to be compressed is smaller than the predetermined data size, acquiring the last remaining data block of the data to be compressed is the current data block.

S12:計算當前資料塊之當前校驗碼。S12: Calculate the current check code of the current data block.

所述計算當前資料塊之當前校驗碼包括藉由CRC檢查碼電路計算當前資料塊之當前校驗碼。其中,當所述當前資料塊相同時,所述當前校驗碼也相同,當所述當前資料塊不相同時,所述當前校驗碼也不相同。例如,如圖2B所示,圖2B示出了圖2A中不同之當前資料塊之當前校驗碼。在圖2B中,當前資料塊A之當前校驗碼a為CRC1,當前資料塊B之當前校驗碼b為CRC1,當前資料塊C之當前校驗碼c為CRC2,當前資料塊D之當前校驗碼d為CRC2,及當前資料塊E之當前校驗碼e為CRC2。The calculating the current check code of the current data block includes calculating the current check code of the current data block by a CRC check code circuit. Wherein, when the current data blocks are the same, the current check codes are also the same, and when the current data blocks are different, the current check codes are also different. For example, as shown in FIG. 2B, FIG. 2B shows the current check codes of different current data blocks in FIG. 2A. In FIG. 2B, the current check code a of the current data block A is CRC1, the current check code b of the current data block B is CRC1, the current check code c of the current data block C is CRC2, and the current data block D of the current The check code d is CRC2, and the current check code e of the current data block E is CRC2.

在本案中,由於在接收待壓縮資料時,獲取在可重構處理器中使用之當前資料塊,則可在所述待壓縮資料接收完時,所述當前校驗碼即可同步產生完,從而減小了延遲時間,使得在資料處理過程中,保持了資料之一致性。In this case, since the current data block used in the reconfigurable processor is obtained when the data to be compressed is received, the current check code can be generated synchronously when the data to be compressed is received. Thus, the delay time is reduced, so that in the process of data processing, the consistency of the data is maintained.

S13:比對當前校驗碼與前一個校驗碼。S13: Compare the current check code with the previous check code.

所述比對當前校驗碼與前一個校驗碼可包括比對當前校驗碼與前一個校驗碼是否完全相同及實質相同。所述實質相同可藉由預先設置之規則來確定。例如字體及字型大小存在差別,可設置為實質相同。The comparing the current check code and the previous check code may include comparing whether the current check code and the previous check code are completely identical and substantially the same. The substantial sameness can be determined by a preset rule. For example, there are differences in fonts and font sizes, which can be set to be substantially the same.

S14:若當前校驗碼與前一個校驗碼不相同,標示所述當前資料塊之標籤為第一標籤。S14: If the current check code is different from the previous check code, mark the label of the current data block as the first label.

所述當前校驗碼與前一個校驗碼不相同代表所述當前校驗碼對應之當前資料塊與前一個校驗碼對應之前一個資料塊不相同。所述不相同包括完全不相同及實質不相同。所述方法還包括:若所述當前校驗碼為第一個當前資料塊之當前校驗碼,預設當前校驗碼為與前一個校驗碼不相同。The difference between the current check code and the previous check code means that the current data block corresponding to the current check code is different from the previous data block corresponding to the previous check code. The different includes completely different and substantially different. The method further includes: if the current check code is the current check code of the first current data block, presetting the current check code to be different from the previous check code.

S15:若當前校驗碼與前一個校驗碼相同,標示所述當前資料塊之標籤為第二標籤。S15: If the current check code is the same as the previous check code, mark the label of the current data block as the second label.

所述當前校驗碼與前一個校驗碼相同代表所述當前校驗碼對應之當前資料塊與前一個校驗碼對應之前一個資料塊相同。所述相同包括完全相同及實質相同。The fact that the current check code is the same as the previous check code means that the current data block corresponding to the current check code is the same as the previous data block corresponding to the previous check code. The identical includes identical and substantially identical.

例如,在第60次獲取之當前資料塊之當前校驗碼與第59次獲取之前一個資料塊之前一個校驗碼相同,則在第60次獲取之當前資料塊之標籤為第二標籤,在第61次獲取之當前資料塊之當前校驗碼與在第60次獲取之前一個資料塊之前一個校驗碼相同,則在第61次獲取之當前資料塊之標籤為第二標籤。For example, if the current check code of the current data block obtained at the 60th time is the same as the check code before the previous data block obtained at the 59th time, the label of the current data block obtained at the 60th time is the second label. The current check code of the current data block obtained at the 61st time is the same as the check code before the previous data block obtained at the 60th time, and the label of the current data block obtained at the 61st time is the second label.

在本實施例中,所述標示所述當前資料塊之標籤包括:按獲取時間順序標示所述當前資料塊之標籤。所述按獲取時間順序標示之當前資料塊之標籤包括為第一標籤之當前資料塊之標籤及為第二標籤之當前資料塊之標籤。從而,所述當前資料塊之標籤按所述當前資料塊之獲取時間順序標示。在本實施例中,所述第一標籤為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。In this embodiment, the labeling of the current data block includes: labeling the current data block in order of acquisition time. The tags of the current data block indicated in the order of acquisition time include the tag of the current data block which is the first tag and the tag of the current data block which is the second tag. Therefore, the tags of the current data block are marked in the order of the acquisition time of the current data block. In this embodiment, the first label is 1, and the second label is 0. For example, as shown in FIG. 3A, FIG. 3A shows the label of each current data block in FIG. 2A marked. In FIG. 3A, the label 100 of the current data block A is 1, the label 200 of the current data block B is 0, the label 300 of the current data block C is 1, the label 400 of the current data block D is 0, and the current data block E The label 500 is 0. Among them, the tag 1 of the current data block A is stored in front of the tag 0 of the current data block B, the tag 0 of the current data block B is stored in front of the tag 1 of the current data block C, and the tag 1 of the current data block C is stored in the current Before the label 0 of the data block D, the label 0 of the current data block D is stored before the label 0 of the current data block E. In other embodiments, the first label is 0 and the second label is 1.

S16:保留標籤為第一標籤之資料塊。S16: The data block whose label is the first label is reserved.

所述標籤為第一標籤之資料塊為與前一個資料塊不相同之資料塊。所述保留標籤為第一標籤之資料塊包括:按獲取時間順序保留標籤為第一標籤之資料塊。從而,標籤為第一標籤之所述資料塊按所述資料塊之獲取時間順序保留。例如,如圖3B所示,圖3B示出了保留之圖3A中標籤為第一標籤之資料塊。在圖3B中,標籤為第一標籤之資料塊A存儲在標籤為第一標籤之資料塊C之前面。The data block whose label is the first label is a data block different from the previous data block. The reserving the data block with the first tag includes: reserving the data block with the first tag in the order of acquisition time. Therefore, the data blocks whose label is the first label are reserved in the order of the acquisition time of the data blocks. For example, as shown in FIG. 3B , FIG. 3B shows the remaining data block with the label of the first label in FIG. 3A . In FIG. 3B, the data block A labeled as the first label is stored before the data block C labeled as the first label.

在本實施例中,所述方法還包括:In this embodiment, the method further includes:

忽略標籤為第二標籤之資料塊。Data blocks with the label second label are ignored.

所述標籤為第二標籤之資料塊為與前一個資料塊相同之資料塊。所述忽略標籤為第二標籤之資料塊即為不保留標籤為第二標籤之資料塊。The data block whose label is the second label is the same data block as the previous data block. The data block whose label is the second label is ignored is the data block whose label is the second label is not reserved.

實施例一藉由獲取在可重構處理器中使用之當前資料塊,計算當前資料塊之當前校驗碼,比對當前校驗碼與前一個校驗碼,若當前校驗碼與前一個校驗碼不相同,標示所述當前資料塊之標籤為第一標籤,若當前校驗碼與前一個校驗碼相同,標示所述當前資料塊之標籤為第二標籤,保留標籤為第一標籤之資料塊。從而,本案可避免資料量大所導致之資料傳輸時產生之較大之輸送量,及資料長所導致之配置記憶體佔據可重構處理器之較大之區域。同時,本案無需統計模型即可對所述資料進行無失真壓縮,且僅需要CRC檢查碼電路即可對所述資料進行壓縮,節省了大量之硬體成本。此外,所述壓縮資料之方法不僅可單獨使用,還可與目前其他已知之壓縮資料之方法,例如統計方案或字典方案,同時使用,從而可提高壓縮之速度。Embodiment 1 Obtain the current data block used in the reconfigurable processor, calculate the current check code of the current data block, and compare the current check code with the previous check code. If the check codes are different, the label indicating the current data block is the first label. If the current check code is the same as the previous check code, the label indicating the current data block is the second label, and the reserved label is the first label. The data block of the label. Therefore, this case can avoid the large amount of data transmission caused by the large amount of data, and the large area of the reconfigurable processor caused by the configuration memory occupying a large area caused by the long data. At the same time, in this case, the data can be compressed without distortion without a statistical model, and only the CRC check code circuit can be used to compress the data, which saves a lot of hardware costs. In addition, the method of compressing data can not only be used alone, but also can be used simultaneously with other known methods of compressing data, such as statistical scheme or dictionary scheme, so as to improve the speed of compression.

圖4是本發明實施例二提供之解壓縮資料之方法之流程圖。所述資料為可重構處理器中使用之待解壓縮資料。所述解壓縮資料之方法可包括以下步驟:FIG. 4 is a flowchart of a method for decompressing data provided by Embodiment 2 of the present invention. The data is the data to be decompressed for use in the reconfigurable processor. The method of decompressing data may include the following steps:

S41:接收在可重構處理器中待解壓縮之資料塊及各標籤。S41: Receive the data block and each tag to be decompressed in the reconfigurable processor.

所述接收在可重構處理器中待解壓縮之資料塊可為外部元件從所述可重構處理器處接收在可重構處理器中待解壓縮之資料塊,也可為所述可重構處理器內一個元件從另一個元件處接收在可重構處理器中待解壓縮之資料塊。所述接收在可重構處理器中待解壓縮之資料塊及各標籤可為,例如接收圖3B所示之在可重構處理器中保留之資料塊及圖3A所示之標籤。The receiving of the data block to be decompressed in the reconfigurable processor may be an external element receiving the data block to be decompressed in the reconfigurable processor from the reconfigurable processor, or it may be the reconfigurable processor. One element within the reconstruction processor receives from another element the block of data to be decompressed in the reconfigurable processor. The receiving of the data blocks and labels to be decompressed in the reconfigurable processor may be, for example, receiving the data blocks retained in the reconfigurable processor and the labels shown in FIG. 3A as shown in FIG. 3B .

S42:從所述標籤中獲取當前標籤。S42: Obtain the current label from the label.

所述從所述標籤中獲取當前標籤包括:按標籤標示順序從所述標籤中逐個獲取所述當前標籤。例如,如圖3A所示,第一個標籤為標籤100、第二個標籤為標籤200、第三個標籤為標籤300、第四個標籤為標籤400及第五個標籤為標籤500。所述按標籤標示順序從所述標籤中逐個獲取所述當前標籤可為,例如第1秒獲取所述標籤100之值1為所述當前標籤,第11秒獲取所述標籤200之值0為所述當前標籤。The acquiring the current tag from the tags includes: acquiring the current tags one by one from the tags in the order of tag marking. For example, as shown in FIG. 3A, the first label is label 100, the second label is label 200, the third label is label 300, the fourth label is label 400, and the fifth label is label 500. The acquisition of the current tags from the tags one by one in the order of tag marking may be, for example, the value 1 of the tag 100 acquired in the first second is the current tag, and the value of the tag 200 acquired in the 11th second is 0. the current label.

S43:若所述當前標籤為第一標籤,從所述待解壓縮之資料塊中獲取所述當前標籤對應之資料塊。S43: If the current tag is the first tag, obtain the data block corresponding to the current tag from the data block to be decompressed.

所述當前標籤為1代表所述當前標籤所對應之當前資料塊與前一個資料塊不相同。此時,所述壓縮之資料塊中存儲有所述當前標籤對應之資料塊。例如,如圖5所示,圖5示出了圖3B所示之壓縮之資料塊解壓縮後之資料塊。在圖5中,若第一個標籤100為當前標籤,此時,從圖3B所示之壓縮之資料塊中獲取所述第一個標籤100對應之資料塊A。每個標籤對應之資料塊之大小基本一致。具體地,所述待解壓縮之資料塊中除了最後一個資料塊之其他資料塊之資料大小相同,且每個可與所述待解壓縮之資料塊中最後一個資料塊之資料大小相同或不相同。If the current tag is 1, it means that the current data block corresponding to the current tag is different from the previous data block. At this time, the data block corresponding to the current tag is stored in the compressed data block. For example, as shown in FIG. 5, FIG. 5 shows the data block after decompression of the compressed data block shown in FIG. 3B. In FIG. 5 , if the first tag 100 is the current tag, at this time, the data block A corresponding to the first tag 100 is obtained from the compressed data block shown in FIG. 3B . The size of the data block corresponding to each label is basically the same. Specifically, the data blocks of the data blocks to be decompressed except the last data block have the same data size, and each may be the same as or different from the data size of the last data block in the data blocks to be decompressed. same.

S44:若所述當前標籤為第二標籤,從所述待解壓縮之資料塊中獲取所述當前標籤前最近之為第一標籤之標籤對應之資料塊。S44: If the current tag is the second tag, obtain the data block corresponding to the tag of the first tag before the current tag from the data block to be decompressed.

所述當前標籤為第二標籤代表所述當前標籤所對應之當前資料塊與前一個資料塊相同。其中,所述當前資料塊可不僅與前一個資料塊相同,還可與前二個資料塊或者前N個資料塊相同。所述N為大於二之任意整數。所述當前標籤前最近之為第一標籤之標籤可為,例如,如圖5所示,當前標籤為標籤500,此時,所述標籤500前最近之為第一標籤之標籤為300,此時,從圖3B所示之保留之資料塊中獲取所述標籤500前最近之為第一標籤之標籤300對應之資料塊C。The fact that the current label is the second label means that the current data block corresponding to the current label is the same as the previous data block. Wherein, the current data block may not only be the same as the previous data block, but also may be the same as the previous two data blocks or the previous N data blocks. The N is any integer greater than two. The label that is the first label before the current label can be, for example, as shown in FIG. 5 , the current label is label 500. At this time, the label that is the first label most recently before the label 500 is 300, and this , the data block C corresponding to the tag 300 that is the first tag before the tag 500 is obtained from the reserved data block shown in FIG. 3B .

實施例二藉由接收在可重構處理器中待解壓縮之資料塊及各標籤,從所述標籤中獲取當前標籤,若所述當前標籤為第一標籤,從所述待解壓縮之資料塊中獲取所述當前標籤對應之資料塊,若所述當前標籤為第二標籤,從所述待解壓縮之資料塊中獲取所述當前標籤前最近之為第一標籤之標籤對應之資料塊。從而,本案無需統計模型即可對所述資料進行無失真解壓縮。此外,所述解壓縮資料之方法不僅可單獨使用,還可與目前其他已知之解壓縮資料之方法,例如統計方案或字典方案,同時使用,從而可提高解壓縮之速度。The second embodiment obtains the current label from the label by receiving the data block and each label to be decompressed in the reconfigurable processor, and if the current label is the first label, obtains the current label from the data to be decompressed Obtain the data block corresponding to the current tag from the block, and if the current tag is the second tag, obtain the data block corresponding to the tag of the first tag before the current tag from the data block to be decompressed . Thus, in this case, the data can be decompressed without a distortion without a statistical model. In addition, the method of decompressing data can not only be used alone, but also can be used simultaneously with other known methods of decompressing data, such as statistical scheme or dictionary scheme, so that the speed of decompression can be improved.

圖6是本發明實施例三提供之壓縮資料之設備之方框圖。所述壓縮資料之設備6包括:記憶體61、至少一個處理器62、及存儲在所述記憶體61中並可在所述至少一個處理器62上運行之電腦可讀指令63。所述至少一個處理器62執行所述電腦可讀指令63時實現上述壓縮資料之方法實施例中之步驟。FIG. 6 is a block diagram of an apparatus for compressing data provided by Embodiment 3 of the present invention. The apparatus 6 for compressing data includes a memory 61 , at least one processor 62 , and computer-readable instructions 63 stored in the memory 61 and executable on the at least one processor 62 . When the at least one processor 62 executes the computer-readable instructions 63, the steps in the above-described method embodiments for compressing data are implemented.

示例性之,所述電腦可讀指令63可以被分割成一個或多個模組/單元,所述一個或者多個模組/單元被存儲在所述記憶體61中,並由所述至少一個處理器62執行,以完成本申請。所述一個或多個模組/單元可以是能夠完成特定功能之一系列電腦可讀指令段,該指令段用於描述所述電腦可讀指令63在所述壓縮資料之設備6中之執行過程。Exemplarily, the computer readable instructions 63 may be divided into one or more modules/units, the one or more modules/units are stored in the memory 61, and the at least one The processor 62 executes to complete the application. The one or more modules/units may be a series of computer-readable instruction segments capable of accomplishing specific functions, and the instruction segments are used to describe the execution process of the computer-readable instructions 63 in the device 6 for compressing data .

所述壓縮資料之設備6可以為任何一種產品,例如,解碼器、可重構處理器等。本領域技術人員可以理解,所述示意圖6僅僅是壓縮資料之設備6之示例,並不構成對壓縮資料之設備6之限定,可以包括比圖示更多或更少之部件,或者組合某些部件,或者不同之部件。The device 6 for compressing data can be any product, such as a decoder, a reconfigurable processor, and the like. Those skilled in the art can understand that the schematic diagram 6 is only an example of the device 6 for compressing data, and does not constitute a limitation to the device 6 for compressing data, and may include more or less components than the one shown, or combine some parts, or different parts.

所述至少一個處理器62可以是中央處理單元(Central Processing Unit,CPU),還可以是其他通用處理器、數位訊號處理器(Digital Signal Processor,DSP)、專用積體電路(Application Specific Integrated Circuit,ASIC)、現場可程式設計閘陣列(Field-Programmable Gate Array,FPGA)或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件等。該處理器62可以是微處理器或者該處理器62也可以是任何常規之處理器等,所述處理器62是所述壓縮資料之設備6之控制中心,利用各種介面和線路連接整個壓縮資料之設備6之各個部分。The at least one processor 62 may be a central processing unit (Central Processing Unit, CPU), and may also be other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The processor 62 can be a microprocessor or the processor 62 can also be any conventional processor, etc. The processor 62 is the control center of the device 6 for compressing data, and uses various interfaces and lines to connect the entire compressed data various parts of the equipment 6.

所述記憶體61可用於存儲所述電腦可讀指令63和/或模組/單元,所述處理器62藉由運行或執行存儲在所述記憶體61內之電腦可讀指令和/或模組/單元,以及調用存儲在記憶體61內之資料,實現所述壓縮資料之設備6之各種功能。所述記憶體61可主要包括存儲程式區和存儲資料區,其中,存儲程式區可存儲作業系統、至少一個功能所需之應用程式(比如聲音播放功能、圖像播放功能等)等;存儲資料區可存儲根據壓縮資料之設備6之使用所創建之資料(比如音訊資料等)等。此外,記憶體61可以包括非易失性電腦可讀記憶體,例如硬碟、記憶體、插接式硬碟,智慧存儲卡(Smart Media Card,SMC),安全數位(Secure Digital,SD)卡,快閃記憶體卡(Flash Card)、至少一個磁碟記憶體件、快閃記憶體器件、或其他非易失性固態記憶體件。所述壓縮資料之設備6集成之模組/單元如果以軟體功能單元之形式實現並作為獨立之產品銷售或使用時,可以存儲在一個非易失性電腦可讀存儲介質中。The memory 61 can be used to store the computer-readable instructions 63 and/or modules/units, and the processor 62 executes or executes the computer-readable instructions and/or modules stored in the memory 61. Groups/units, as well as calling the data stored in the memory 61, realize various functions of the device 6 for compressing the data. The memory 61 may mainly include a storage program area and a storage data area, wherein the storage program area may store the operating system, an application program required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; storage data The area may store data (such as audio data, etc.) created according to the use of the device 6 for compressing the data, and the like. In addition, the memory 61 may include non-volatile computer readable memory such as hard disk, memory, plug-in hard disk, Smart Media Card (SMC), Secure Digital (SD) card , a flash memory card (Flash Card), at least one disk memory device, flash memory device, or other non-volatile solid state memory device. If the modules/units integrated in the device 6 for compressing data are implemented in the form of software functional units and sold or used as independent products, they can be stored in a non-volatile computer-readable storage medium.

圖7是本發明實施例四提供之解壓縮資料之設備之方框圖。所述解壓縮資料之設備7包括:記憶體71、至少一個處理器72、及存儲在所述記憶體71中並可在所述至少一個處理器72上運行之電腦可讀指令73。所述至少一個處理器72執行所述電腦可讀指令73時實現上述壓縮資料之方法實施例中之步驟。FIG. 7 is a block diagram of a device for decompressing data provided by Embodiment 4 of the present invention. The apparatus 7 for decompressing data includes a memory 71 , at least one processor 72 , and computer-readable instructions 73 stored in the memory 71 and executable on the at least one processor 72 . When the at least one processor 72 executes the computer-readable instructions 73, the steps of the above-described method embodiments for compressing data are implemented.

示例性之,所述電腦可讀指令73可以被分割成一個或多個模組/單元,所述一個或者多個模組/單元被存儲在所述記憶體71中,並由所述至少一個處理器72執行,以完成本申請。所述一個或多個模組/單元可以是能夠完成特定功能之一系列電腦可讀指令段,該指令段用於描述所述電腦可讀指令73在所述解壓縮資料之設備7中之執行過程。Exemplarily, the computer-readable instructions 73 may be divided into one or more modules/units, the one or more modules/units are stored in the memory 71, and the at least one The processor 72 executes to complete the application. The one or more modules/units may be a series of computer readable instruction segments capable of performing specific functions, the instruction segments being used to describe the execution of the computer readable instructions 73 in the device 7 for decompressing data process.

所述解壓縮資料之設備7可以為任何一種產品,例如,解碼器、可重構處理器等。本領域技術人員可以理解,所述示意圖7僅僅是解壓縮資料之設備7之示例,並不構成對解壓縮資料之設備7之限定,可以包括比圖示更多或更少之部件,或者組合某些部件,或者不同之部件。The device 7 for decompressing data can be any product, such as a decoder, a reconfigurable processor, and the like. Those skilled in the art can understand that the schematic diagram 7 is only an example of the device 7 for decompressing data, and does not constitute a limitation on the device 7 for decompressing data, and may include more or less components than those shown in the figure, or combinations thereof some parts, or different parts.

所述至少一個處理器72可以是中央處理單元(Central Processing Unit,CPU),還可以是其他通用處理器、數位訊號處理器(Digital Signal Processor,DSP)、專用積體電路(Application Specific Integrated Circuit,ASIC)、現場可程式設計閘陣列(Field-Programmable Gate Array,FPGA)或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件等。該處理器72可以是微處理器或者該處理器72也可以是任何常規之處理器等,所述處理器72是所述解壓縮資料之設備7之控制中心,利用各種介面和線路連接整個解壓縮資料之設備7之各個部分。The at least one processor 72 may be a central processing unit (Central Processing Unit, CPU), and may also be other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The processor 72 can be a microprocessor or the processor 72 can also be any conventional processor, etc. The processor 72 is the control center of the device 7 for decompressing data, and uses various interfaces and lines to connect the entire decompression Parts of equipment 7 for compressing data.

所述記憶體71可用於存儲所述電腦可讀指令73和/或模組/單元,所述處理器72藉由運行或執行存儲在所述記憶體71內之電腦可讀指令和/或模組/單元,以及調用存儲在記憶體71內之資料,實現所述解壓縮資料之設備7之各種功能。所述記憶體71可主要包括存儲程式區和存儲資料區,其中,存儲程式區可存儲作業系統、至少一個功能所需之應用程式(比如聲音播放功能、圖像播放功能等)等;存儲資料區可存儲根據解壓縮資料之設備7之使用所創建之資料(比如音訊資料等)等。此外,記憶體71可以包括非易失性電腦可讀記憶體,例如硬碟、記憶體、插接式硬碟,智慧存儲卡(Smart Media Card,SMC),安全數位(Secure Digital,SD)卡,快閃記憶體卡(Flash Card)、至少一個磁碟記憶體件、快閃記憶體器件、或其他非易失性固態記憶體件。所述解壓縮資料之設備7集成之模組/單元如果以軟體功能單元之形式實現並作為獨立之產品銷售或使用時,可以存儲在一個非易失性電腦可讀存儲介質中。The memory 71 can be used to store the computer-readable instructions 73 and/or modules/units, and the processor 72 executes or executes the computer-readable instructions and/or modules stored in the memory 71. Groups/units, as well as calling the data stored in the memory 71, realize various functions of the device 7 for decompressing the data. The memory 71 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; storage data The area may store data (such as audio data, etc.), etc., created according to the use of the device 7 for decompressing the data. In addition, the memory 71 may include non-volatile computer readable memory such as hard disk, memory, plug-in hard disk, Smart Media Card (SMC), Secure Digital (SD) card , a flash memory card (Flash Card), at least one disk memory device, flash memory device, or other non-volatile solid state memory device. If the modules/units integrated in the device 7 for decompressing data are implemented in the form of software functional units and sold or used as independent products, they may be stored in a non-volatile computer-readable storage medium.

最後應說明之是,以上實施例僅用以說明本發明之技術方案而非限制,儘管參照較佳實施例對本發明進行了詳細說明,本領域之普通技術人員應當理解,可以對本發明之技術方案進行修改或等同替換,而不脫離本發明技術方案之精神範圍。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit them. Although the present invention has been described in detail with reference to the preferred embodiments, those of ordinary skill in the art should understand that the technical solutions of the present invention can be Modifications or equivalent substitutions can be made without departing from the spirit and scope of the technical solutions of the present invention.

S11: 獲取在可重構處理器中使用之當前資料塊 S12: 計算當前資料塊之當前校驗碼 S13: 比對當前校驗碼與前一個校驗碼 S14: 若當前校驗碼與前一個校驗碼不相同,標示所述當前資料塊之標籤為第一標籤 S15: 若當前校驗碼與前一個校驗碼相同,標示所述當前資料塊之標籤為第二標籤 S16: 保留標籤為第一標籤之資料塊 S41: 接收在可重構處理器中待解壓縮之資料塊及各標籤 S42: 從所述標籤中獲取當前標籤 S43: 若所述當前標籤為第一標籤,從所述待解壓縮之資料塊中獲取所述當前標籤對應之資料塊 S44: 若所述當前標籤為第二標籤,從所述待解壓縮之資料塊中獲取所述當前標籤前最近之為第一標籤之標籤對應之資料塊 6: 壓縮資料之設備 7: 解壓縮資料之設備 61,71: 記憶體 62,72: 處理器 63,73: 電腦可讀指令 S11: Get the current data block used in the reconfigurable processor S12: Calculate the current check code of the current data block S13: Compare the current check code with the previous check code S14: If the current check code is different from the previous check code, mark the label of the current data block as the first label S15: If the current check code is the same as the previous check code, mark the label of the current data block as the second label S16: Keep the data block whose label is the first label S41: Receive data blocks and tags to be decompressed in the reconfigurable processor S42: Get the current label from the label S43: If the current tag is the first tag, obtain the data block corresponding to the current tag from the data block to be decompressed S44: If the current tag is the second tag, obtain the data block corresponding to the tag of the first tag before the current tag from the data block to be decompressed 6: Equipment for compressing data 7: Equipment for decompressing data 61,71: memory 62,72: Processor 63,73: Computer-readable instructions

圖1係本發明實施例一提供之壓縮資料之方法之流程圖。 圖2A係在不同時間所獲取之當前資料塊;圖2B係圖2A中不同之當前資料塊之當前校驗碼。 圖3A係圖2A中之標示各當前資料塊之標籤之示意圖;圖3B係圖3A中保留標籤為第一標籤之資料塊之示意圖。 圖4係本發明實施例二提供之解壓縮資料之方法之流程圖。 圖5係圖3B所示之保留之資料塊解壓縮後之資料塊。 圖6係本發明實施例三提供之壓縮資料之設備之方框圖。 圖7係本發明實施例四提供之解壓縮資料之設備之方框圖。 FIG. 1 is a flowchart of a method for compressing data provided by Embodiment 1 of the present invention. FIG. 2A shows current data blocks acquired at different times; FIG. 2B shows current check codes of different current data blocks in FIG. 2A . FIG. 3A is a schematic diagram of a label indicating each current data block in FIG. 2A ; FIG. 3B is a schematic diagram of a data block whose reserved label is the first label in FIG. 3A . FIG. 4 is a flowchart of a method for decompressing data provided by Embodiment 2 of the present invention. FIG. 5 is a decompressed data block of the reserved data block shown in FIG. 3B. FIG. 6 is a block diagram of an apparatus for compressing data provided by Embodiment 3 of the present invention. FIG. 7 is a block diagram of a device for decompressing data provided by Embodiment 4 of the present invention.

without

S11: 獲取在可重構處理器中使用之當前資料塊 S12: 計算當前資料塊之當前校驗碼 S13: 比對當前校驗碼與前一個校驗碼 S14: 若當前校驗碼與前一個校驗碼不相同,標示所述當前資料塊之標籤為第一標籤 S15: 若當前校驗碼與前一個校驗碼相同,標示所述當前資料塊之標籤為第二標籤 S16: 保留標籤為第一標籤之資料塊 S11: Get the current data block used in the reconfigurable processor S12: Calculate the current check code of the current data block S13: Compare the current check code with the previous check code S14: If the current check code is different from the previous check code, mark the label of the current data block as the first label S15: If the current check code is the same as the previous check code, mark the label of the current data block as the second label S16: Keep the data block whose label is the first label

Claims (10)

一種壓縮資料之方法,所述資料為可重構處理器中使用之待壓縮資料,且所述待壓縮資料具有多個資料塊,其中,所述方法包括: 獲取在可重構處理器中使用之當前資料塊; 計算當前資料塊之當前校驗碼; 比對當前校驗碼與前一個校驗碼; 若當前校驗碼與前一個校驗碼不相同,標示所述當前資料塊之標籤為第一標籤; 若當前校驗碼與前一個校驗碼相同,標示所述當前資料塊之標籤為第二標籤; 保留標籤為第一標籤之資料塊。 A method for compressing data, the data is data to be compressed used in a reconfigurable processor, and the data to be compressed has a plurality of data blocks, wherein the method includes: Get the current data block used in the reconfigurable processor; Calculate the current check code of the current data block; Compare the current check code with the previous check code; If the current check code is different from the previous check code, marking the label of the current data block as the first label; If the current check code is the same as the previous check code, marking the label of the current data block as the second label; The data block whose label is the first label is reserved. 如請求項1所述之壓縮資料之方法,其中,所述方法還包括: 忽略標籤為第二標籤之資料塊。 The method for compressing data according to claim 1, wherein the method further comprises: Data blocks with the label second label are ignored. 如請求項1所述之壓縮資料之方法,其中,所述第一標籤為1,所述第二標籤為0。The method for compressing data according to claim 1, wherein the first tag is 1, and the second tag is 0. 如請求項1所述之壓縮資料之方法,其中,所述資料塊是所述可重構處理器按預定之資料大小來獲取之。The method for compressing data according to claim 1, wherein the data block is obtained by the reconfigurable processor according to a predetermined data size. 如請求項1所述之壓縮資料之方法,其中,所述方法還包括: 若所述當前校驗碼為第一個當前資料塊之當前校驗碼,預設當前校驗碼為與前一個校驗碼不相同。 The method for compressing data according to claim 1, wherein the method further comprises: If the current check code is the current check code of the first current data block, the preset current check code is different from the previous check code. 如請求項1所述之壓縮資料之方法,其中: 所述標示所述當前資料塊之標籤包括: 按獲取時間順序標示所述當前資料塊之標籤; 所述保留標籤為第一標籤之資料塊包括: 按獲取時間順序保留標籤為第一標籤之資料塊。 The method of compressing data as described in claim 1, wherein: The label identifying the current data block includes: Label the current data block in the order of acquisition time; The data block whose reserved tag is the first tag includes: The data block whose label is the first label is reserved in the order of acquisition time. 一種解壓縮資料之方法,所述資料為可重構處理器中使用之待解壓縮資料,其中,所述方法包括: 接收在可重構處理器中待解壓縮之資料塊及各標籤; 從所述標籤中獲取當前標籤; 若所述當前標籤為第一標籤,從所述待解壓縮之資料塊中獲取所述當前標籤對應之資料塊; 若所述當前標籤為第二標籤,從所述待解壓縮之資料塊中獲取所述當前標籤前最近之為第一標籤之標籤對應之資料塊。 A method of decompressing data, the data is to-be-decompressed data used in a reconfigurable processor, wherein the method comprises: receiving data blocks and tags to be decompressed in the reconfigurable processor; Get the current tag from the tag; If the current tag is the first tag, obtain the data block corresponding to the current tag from the data block to be decompressed; If the current tag is the second tag, the data block corresponding to the tag of the first tag that is closest to the current tag is obtained from the data block to be decompressed. 如請求項7所述之解壓縮資料之方法,其中,所述從所述標籤中獲取當前標籤包括: 按標籤標示順序從所述標籤中逐個獲取所述當前標籤。 The method for decompressing data according to claim 7, wherein the obtaining the current tag from the tag comprises: The current tags are acquired one by one from the tags in the order of tag marking. 一種壓縮資料之設備,所述資料為可重構處理器中使用之待壓縮資料,其中,所述設備包括處理器及記憶體,所述處理器用於執行所述記憶體中存儲之至少一個指令時實現如請求項1至6中任意一項所述之壓縮資料之方法。A device for compressing data, the data is data to be compressed for use in a reconfigurable processor, wherein the device includes a processor and a memory, the processor is used to execute at least one instruction stored in the memory When implementing the method of compressing data as described in any one of claims 1 to 6. 一種解壓縮資料之設備,所述資料為可重構處理器中使用之待解壓縮資料,其中,所述設備包括處理器及記憶體,所述處理器用於執行所述記憶體中存儲之至少一個指令時實現如請求項7至8中任意一項所述之解壓縮資料之方法。A device for decompressing data, the data is data to be decompressed for use in a reconfigurable processor, wherein the device includes a processor and a memory, the processor is used to execute at least one stored in the memory A single instruction implements the method for decompressing data as described in any one of claims 7 to 8.
TW109128149A 2020-08-18 2020-08-18 Method and device of compressing configuration data, and method and device of decompressing configuration data TWI758825B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW109128149A TWI758825B (en) 2020-08-18 2020-08-18 Method and device of compressing configuration data, and method and device of decompressing configuration data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109128149A TWI758825B (en) 2020-08-18 2020-08-18 Method and device of compressing configuration data, and method and device of decompressing configuration data

Publications (2)

Publication Number Publication Date
TW202209102A TW202209102A (en) 2022-03-01
TWI758825B true TWI758825B (en) 2022-03-21

Family

ID=81710733

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109128149A TWI758825B (en) 2020-08-18 2020-08-18 Method and device of compressing configuration data, and method and device of decompressing configuration data

Country Status (1)

Country Link
TW (1) TWI758825B (en)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009126644A2 (en) * 2008-04-08 2009-10-15 Quantum Corporation Methods and systems for improved throughput performance in a distributed data de-duplication environment
WO2011025967A2 (en) * 2009-08-28 2011-03-03 Fusion-Io, Inc. Apparatus, system, and method for improved data deduplication
TW201218665A (en) * 2010-09-10 2012-05-01 Panasonic Corp Transmission method, transmitter apparatus, reception method and receiver apparatus
WO2014151758A1 (en) * 2013-03-15 2014-09-25 Cisco Technology, Inc. Methods and apparatus for error detection and correction in data storage systems
TW201506769A (en) * 2013-03-14 2015-02-16 Lsi Corp Storage device assisted data de-duplication
TW201612747A (en) * 2014-09-18 2016-04-01 Wistron Neweb Corp Method of module version upgrading and terminal device
US20180121362A1 (en) * 2014-12-18 2018-05-03 Violin Systems Llc Caching of Metadata for Deduplicated LUNs
US20180253465A1 (en) * 2008-01-24 2018-09-06 Quantum Corporation Methods and systems for vectored data de-duplication
TWI641948B (en) * 2017-07-27 2018-11-21 群聯電子股份有限公司 Data storage method, memory control circuit unit and memory storage device
TW201913406A (en) * 2017-08-17 2019-04-01 佳能企業股份有限公司 Data transmission method and communication system
TW202008206A (en) * 2018-08-08 2020-02-16 廣達電腦股份有限公司 Methods and apparatus for authenticating a firmware settings input file
TW202009709A (en) * 2018-08-28 2020-03-01 群聯電子股份有限公司 Memory management method, memory storage device and memory control circuit unit

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180253465A1 (en) * 2008-01-24 2018-09-06 Quantum Corporation Methods and systems for vectored data de-duplication
WO2009126644A2 (en) * 2008-04-08 2009-10-15 Quantum Corporation Methods and systems for improved throughput performance in a distributed data de-duplication environment
WO2011025967A2 (en) * 2009-08-28 2011-03-03 Fusion-Io, Inc. Apparatus, system, and method for improved data deduplication
TW201218665A (en) * 2010-09-10 2012-05-01 Panasonic Corp Transmission method, transmitter apparatus, reception method and receiver apparatus
TW201506769A (en) * 2013-03-14 2015-02-16 Lsi Corp Storage device assisted data de-duplication
WO2014151758A1 (en) * 2013-03-15 2014-09-25 Cisco Technology, Inc. Methods and apparatus for error detection and correction in data storage systems
TW201612747A (en) * 2014-09-18 2016-04-01 Wistron Neweb Corp Method of module version upgrading and terminal device
US20180121362A1 (en) * 2014-12-18 2018-05-03 Violin Systems Llc Caching of Metadata for Deduplicated LUNs
TWI641948B (en) * 2017-07-27 2018-11-21 群聯電子股份有限公司 Data storage method, memory control circuit unit and memory storage device
TW201913406A (en) * 2017-08-17 2019-04-01 佳能企業股份有限公司 Data transmission method and communication system
TW202008206A (en) * 2018-08-08 2020-02-16 廣達電腦股份有限公司 Methods and apparatus for authenticating a firmware settings input file
TW202009709A (en) * 2018-08-28 2020-03-01 群聯電子股份有限公司 Memory management method, memory storage device and memory control circuit unit

Also Published As

Publication number Publication date
TW202209102A (en) 2022-03-01

Similar Documents

Publication Publication Date Title
US10212440B2 (en) Virtual frame buffer system and method
DE102010049322B4 (en) Instruction set architecture for programmable CRC (cyclic redundancy check) calculations
CN109981111B (en) Data compression coding method and device and storage electronic equipment
CN112671921A (en) Data transmission method and device, electronic equipment and readable storage medium
DE102014204403A1 (en) Data processing system and method of operating the same
US11614889B2 (en) Aggregating commands in a stream based on cache line addresses
CN111880916A (en) Multi-drawing task processing method, device, terminal, medium and host in GPU
TWI758825B (en) Method and device of compressing configuration data, and method and device of decompressing configuration data
CN112311755A (en) Industrial control protocol reverse analysis method and device
CN110019347B (en) Data processing method and device of block chain and terminal equipment
CN113613289A (en) Bluetooth data transmission method, system and communication equipment
CN114077569B (en) Method and device for compressing data, and method and device for decompressing data
WO2018068250A1 (en) Method and device for data processing, chip and camera
US20240267544A1 (en) Video data transmission method, video data decoding method, and related apparatuses
DE112012004727B4 (en) Unpack a variable number of data bits
CN112132031B (en) Vehicle style identification method and device, electronic equipment and storage medium
CN102891732A (en) Data sending method and device and data receiving method and device
CN109165200B (en) Data synchronization method and device, computing equipment and computer storage medium
US20200258188A1 (en) Image Compression/Decompression in a Computer Vision System
CN114257879A (en) Method and system for playing video
CN114365096A (en) Memory allocation method, device, terminal and computer readable storage medium
CN104699219B (en) Electronic equipment and information processing method
US20190124180A1 (en) Packet compression and decompression
US6608940B1 (en) Lossless image compression
US20240111428A1 (en) Method, device, and computer program product for processing compressed data