JP5762151B2 - Numerical data compression system and method - Google Patents

Numerical data compression system and method Download PDF

Info

Publication number
JP5762151B2
JP5762151B2 JP2011126795A JP2011126795A JP5762151B2 JP 5762151 B2 JP5762151 B2 JP 5762151B2 JP 2011126795 A JP2011126795 A JP 2011126795A JP 2011126795 A JP2011126795 A JP 2011126795A JP 5762151 B2 JP5762151 B2 JP 5762151B2
Authority
JP
Japan
Prior art keywords
bit string
block
bits
blocks
data
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
Application number
JP2011126795A
Other languages
Japanese (ja)
Other versions
JP2012253696A (en
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.)
Tokyo Metropolitan Industrial Technology Research Instititute (TIRI)
Original Assignee
Tokyo Metropolitan Industrial Technology Research Instititute (TIRI)
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 Tokyo Metropolitan Industrial Technology Research Instititute (TIRI) filed Critical Tokyo Metropolitan Industrial Technology Research Instititute (TIRI)
Priority to JP2011126795A priority Critical patent/JP5762151B2/en
Publication of JP2012253696A publication Critical patent/JP2012253696A/en
Application granted granted Critical
Publication of JP5762151B2 publication Critical patent/JP5762151B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は、主にコンピュータによる科学技術計算や表計算のソフトウェアで一般的に採用されている浮動小数点形式の数値データの処理に関し、連続して入力される数値入力データを効率的に圧縮及び伸長するためのシステム、方法及びその装置に関するものである。   The present invention mainly relates to processing of numerical data in a floating-point format that is generally employed in scientific and technical calculation and spreadsheet software by a computer, and efficiently compresses and decompresses numerical input data that is continuously input. The present invention relates to a system, a method, and an apparatus therefor.

浮動小数点形式の数値データを圧縮する方式として、従来技術には、当該データを「A×Z + R(A及びRは実数、Zは整数)」の形で表現し、整数部分Zをエントロピィ符号化といった公知の圧縮技術を用いてデータ圧縮するものが存在する(特許文献1〜4)。また、これ以外にも、当該整数部分Zを辞書方式で圧縮する方式(例えば、LZ形式のデータ圧縮)も存在する(非特許文献1)。   As a method for compressing numerical data in a floating-point format, in the prior art, the data is expressed in the form of “A × Z + R (A and R are real numbers, Z is an integer)”, and the integer portion Z is entropy-coded. Some data compression is performed using a known compression technique such as conversion (Patent Documents 1 to 4). In addition, there is a method (for example, LZ format data compression) in which the integer part Z is compressed by a dictionary method (Non-Patent Document 1).

また、これらの先行技術とは別に、IEEE754において規定されている64ビットの倍精度浮動小数点方式について、FPCという方式を用いて64ビットの浮動小数点形式の数値を有するデータ・ストリームを圧縮するシステムが存在している(非特許文献2)。   In addition to these prior arts, there is a system for compressing a data stream having a numerical value of 64-bit floating-point format using a method called FPC for the 64-bit double-precision floating-point method defined in IEEE754. It exists (Non-Patent Document 2).

図1に、先行技術である当該FPCのアルゴリズムの概要を示す。なお、図1は非特許文献2に記載のFig.1(FPC compression algorithm overview)をそのまま引用したものである。FPCは、IEEE754倍精度浮動小数点形式の数値データの線形入力シーケンス(uncompressed 1D block of doubles)における各64ビット・データ値(「double」)に対して、(i)2つの予測器「fcm」及び「dfcm」を用いて各64ビット・データ値を予測し、(ii)各予測データ値と入力データ値「double」をそれぞれ比較(「compare」)し、(iii)比較結果に基づいて「double」により近い方の64ビット値(「closer value」)を「selector」で選択し、(iv)入力データ(「double」)のビット列と選択された「closer value」のビット列との排他的論理和「XOR」を計算する。次いで、(v)その結果に対して、「leading zero byte counter」において先行0バイト部分をカウントし、(vi)当該カウント値に基づいて、前記「selector」からの「predictor code」と共に「encoder」で圧縮処理を行い、出力(「compressed block」)するものである。ここで、「encoder」での先行0バイト部分の圧縮では、先行0バイトの数を3ビットの値にエンコードして、1ビットの「predictor code」と連結して4ビットにコード化する。最終的な出力「compressed block」は、当該4ビット・コード(bit+cnt)並びに圧縮されていない残余部(「residual」)で構成される。 FIG. 1 shows an outline of the FPC algorithm as the prior art. Note that FIG. 1 is illustrated in FIG. 1 (FPC compression algorithm overview) is quoted as it is. The FPC uses (i) two predictors “fcm” for each 64-bit data value (“double b ”) in a linear input sequence (“compressed 1D block of doubles”) of numeric data in IEEE 754 double precision floating point format. And “dfcm” to predict each 64-bit data value, and (ii) compare each predicted data value with the input data value “double b ” (“compare”), respectively (iii) based on the comparison result The 64-bit value closer to “double b ” (“closer value”) is selected by “selector”, and (iv) the bit string of input data (“double b ”) and the bit string of the selected “closer value” An exclusive OR “XOR” is calculated. Next, (v) the leading zero byte part is counted in “leading zero byte counter” for the result, and (vi) “encoder” together with “precoder code” from “selector” based on the count value. The data is compressed and output ("compressed block"). Here, in the compression of the leading 0 byte portion in “encoder”, the number of leading 0 bytes is encoded into a 3-bit value, and is concatenated with a 1-bit “predictor code” to be encoded into 4 bits. The final output “compressed block” consists of the 4-bit code (bit b + cnt b ) as well as the uncompressed remainder (“residual b ”).

特許文献1:特許第4049791号
特許文献2: 特許第4049792号
特許文献3: 特許第4049793号
特許文献4: 再表2004/098066号
Patent Literature 1: Patent No. 4049791 Patent Literature 2: Patent No. 4049792 Patent Literature 3: Patent No. 4049793 Patent Literature 4: Table No. 2004/098066

非特許文献1:「ISO/IEC MPEG-4 Audio Lossless Coding (ALS) におけるIEEE754浮動 小数点信号の可逆圧縮」、原田ら、信学論、Vol. J89-B, No. 2, pp. 204-313, 2006.)

非特許文献2: M. Burtscher and P. Ratanaworabhan, “FPC: A High-Speed Compressor for Double-Presicion Floating-Point Data,” (http://users.ices.utexas.edu/~burtscher/papers/tc09.pdf)
Non-Patent Document 1: “Reversible compression of IEEE754 floating point signal in ISO / IEC MPEG-4 Audio Lossless Coding (ALS)”, Harada et al., Theory of Science, Vol. J89-B, No. 2, pp. 204-313 , 2006.)

Non-Patent Document 2: M. Burtscher and P. Ratanaworabhan, “FPC: A High-Speed Compressor for Double-Presicion Floating-Point Data,” (http://users.ices.utexas.edu/~burtscher/papers/tc09 .pdf)

本発明は、上記FPCと類似の値予測手法により数値データを圧縮する手法を基本にして、連続して入力される浮動小数点形式の数値データ・ストリームに対する圧縮率を向上することを目的とするものである。   An object of the present invention is to improve the compression ratio for a numerical data stream in a floating-point format that is continuously input, based on a method of compressing numerical data by a value prediction method similar to the FPC. It is.

表1は、従来技術によるデータ圧縮率の比較を示している。表中、「表計算」は単利年率0.5%の利率計算を100,000年分行ったデータ、「科学技術計算」は後述する図2のfdtdの圧縮後データ、「観測データ」は同obs_tempの圧縮後データのサイズを示したものである。上記表1からも明らかなように、特に表計算及び科学技術計算の技術分野においては、FPC(非特許文献2)と比べ、ZIPに代表される辞書方式の圧縮方式では圧縮率が十分なものとはいえない場合も多く、上述したような、浮動小数点形式の数値データを「A×Z + R(A及びRは実数、Zは整数)」の形で表し、整数部分Zに対して辞書方式で圧縮を行う方式(非特許文献1)においても圧縮率が十分なものとはいえない。   Table 1 shows a comparison of data compression rates according to the prior art. In the table, “spreading” is data obtained by calculating the interest rate at a single interest rate of 0.5% for 100,000 years, “science and technology calculation” is the compressed data of fdtd in FIG. 2 described later, and “observation data” is the data of obs_temp It shows the size of the compressed data. As is clear from Table 1 above, particularly in the technical fields of spreadsheets and scientific and technological calculations, compared to FPC (Non-Patent Document 2), the dictionary-based compression method represented by ZIP has a sufficient compression rate. In many cases, the numerical data in the floating-point format as described above is expressed in the form of “A × Z + R (A and R are real numbers, Z is an integer)”. Even in a method (Non-patent Document 1) that performs compression by a method, it cannot be said that the compression rate is sufficient.

更に、上記FPCにおいては、そもそも倍精度浮動小数点形式の数値データの予測が困難であり、十分な圧縮率が得にくいという問題がある。当該予測困難性については、図2に参照されるグラフから更に説明される。図2のグラフにおいて、縦軸は上記〔非特許文献2〕で開示されるアルゴリズムを用いて種々のデータセットに対して行った予測の予測的中率、横軸は、IEEE754による倍精度浮動小数点形式の符号ビットを1ビット目としたときのビット位置を示している。また、「obs_temp」をはじめとする各データセットは、上記〔非特許文献2〕に開示されているとおりのものであり、ここで「fdtd」については、電磁界解析での数値計算において用いられ、本発明者がシミュレーション用に作成したものである。尚、当該「fdtd」の具体的な内容については本発明の対象外である点に留意されたい。   Further, the FPC has a problem that it is difficult to predict numerical data in the double precision floating point format in the first place, and it is difficult to obtain a sufficient compression rate. The prediction difficulty will be further explained from the graph referred to in FIG. In the graph of FIG. 2, the vertical axis is a predictive predictive ratio of predictions performed on various data sets using the algorithm disclosed in the above [Non-Patent Document 2], and the horizontal axis is a double-precision floating point according to IEEE754. The bit position when the sign bit of the format is the first bit is shown. Each data set including “obs_temp” is as disclosed in the above [Non-patent Document 2], and “fdtd” is used in numerical calculation in electromagnetic field analysis. The present inventors have created for simulation. Note that the specific contents of the “fdtd” are out of the scope of the present invention.

図示のとおり、多くのデータにおいて、12ビット目以降のビット位置において予測的中率が低下し、的中率「0.5」(即ち、ランダムに予測したのと同じ結果)に近付いていることが分かる。即ち、従来のFPCによる方式では、このような倍精度浮動小数点形式のデータ予測が困難な条件下で圧縮を行うものとなることから、十分な圧縮率を得ることは難しい。更に、上記FPCにおいては、各々の浮動小数点形式データに対して別個に圧縮処理を実施している点も圧縮率を制限する一因となっている。   As shown in the figure, in many data, the predictive predictive value decreases at bit positions after the 12th bit, and approaches the predictive predictive value “0.5” (that is, the same result as that predicted randomly). I understand. That is, in the conventional FPC method, compression is performed under conditions where it is difficult to predict data in such a double-precision floating point format, and it is difficult to obtain a sufficient compression rate. Further, in the FPC, the compression processing is performed separately for each floating point format data, which is one factor that limits the compression rate.

そこで、本発明は、上記のような従来のFPCの問題点を解消するために、上記FPCと類似の値予測手法による数値データ圧縮方式を基本にして、更に、複数の浮動小数点形式の数値データを所与の数の単位で纏めて一組で処理するように構成し、及び数値データのビット列に対し、特に予測的中率の高い上位ビット列部分とそれ以外の下位ビット列部分に分離した上で、当該上位ビット列部分と下位ビット列部分を独立して圧縮処理を実施することにより、より効果的な浮動小数点形式の数値データの圧縮率を実現することを目的とするものである。   Therefore, the present invention is based on a numerical data compression method based on a value prediction method similar to the FPC in order to solve the problems of the conventional FPC as described above, and further, numerical data in a plurality of floating point formats. Are processed in one set in a given number of units, and the bit string of numerical data is separated into an upper bit string part having a particularly high predictive middle rate and other lower bit string parts. An object of the present invention is to realize a more effective floating point format numerical data compression ratio by independently compressing the upper bit string portion and the lower bit string portion.

本発明のシステムは、連続して入力される複数の入力データを、各入力データに対する予測データに基づいて圧縮するものであり、当該入力データ及び予測データの浮動小数点形式が、所定のビット数を有する符号部、指数部及び仮数部の順で表される2進数のビット列からなるように構成されている。   The system of the present invention compresses a plurality of continuously input data based on predicted data for each input data, and the floating point format of the input data and predicted data has a predetermined number of bits. It consists of a binary bit string represented in the order of a sign part, an exponent part, and a mantissa part.

より具体的には、本発明のシステムは、(i)入力データのビット列及び予測データのビット列のそれぞれの差分(例えば、排他的論理和)による差分ビット列を所定の数の単位の組でメモリにバッファリングするバッファ部、(ii)当該バッファリングされた差分ビット列のそれぞれから、符号部及び指数部に対応するビット列部分を含む所定のビット数からなる上位ビット列を、所定のビット数からなる1以上のブロックに分割し、また、当該分割されたブロックを、上位から下位の順に組ごとに組み替えて連結することにより、先行ビット列としてバッファリングする再構築部、(iii)当該バッファリングされた先行ビット列ついて、先頭ブロックからの値が零(0)となるブロックの連続数に基づき先行ビット列を圧縮して圧縮先行ビット列を形成する先行列圧縮部、を含むものである。   More specifically, in the system of the present invention, (i) a difference bit string based on a difference (for example, exclusive OR) between a bit string of input data and a bit string of prediction data is stored in a memory in a set of a predetermined number of units. (Ii) from each of the buffered difference bit sequences, one or more higher-order bit sequences consisting of a predetermined number of bits including a bit sequence portion corresponding to the sign part and the exponent part. A reconstructing unit that divides the divided blocks into blocks and rearranges the blocks into groups from the higher order to the lower order, and buffers them as a preceding bit string, (iii) the buffered preceding bit string Therefore, the preceding bit string is compressed and compressed based on the number of consecutive blocks whose value from the first block is zero (0). Previously matrix compression portion forming the leading bit string, is intended to include.

当該本発明のシステムにより、上述したFPC方式の技術的課題を解消し、浮動小数点数の予測が困難な状況であっても、圧縮率を向上させることを可能にする。   The system of the present invention solves the technical problem of the FPC method described above, and makes it possible to improve the compression rate even in a situation where it is difficult to predict a floating-point number.

また、本発明のシステムにおける上記再構築部は、更に、上記連結された先行ビット列に対して、上位のブロックから順に値が非零(0でない)となるブロックを検査し、及び下位のブロックから順に値が零(0)となるブロックを検査し、当該非零ブロック及び当該零ブロックがそれぞれ検出された場合には、これらを入れ替えるように構成される。   Further, the reconstruction unit in the system of the present invention further inspects the concatenated preceding bit string for blocks whose values are non-zero (not 0) in order from the upper block, and from the lower block. Blocks whose values are zero (0) in order are inspected, and when the non-zero block and the zero block are detected, they are replaced.

当該構成により、例えば、浮動小数点数の絶対値はほぼ等しいものの、符号ビットだけが異なるような振動データが連続して入力された場合にも十分な圧縮率を確保することを可能にする。   With this configuration, for example, it is possible to ensure a sufficient compression rate even when vibration data in which the absolute values of the floating-point numbers are substantially equal but only the sign bit is different is input continuously.

更に、本発明のシステムにおける圧縮部は、差分ビット列から上位ビット列を除いた下位ビット列を組ごとに連結して形成される残余ビット列を、所定のビット数からなるブロックの単位で分割するように構成され、当該ブロックの単位で分割された各ブロックのうち、零(0)が所定のバイト数以上含まれるブロックを抽出及び削除することに基づいて、残余ビット列を圧縮する残余列圧縮部を備える。   Further, the compression unit in the system of the present invention is configured to divide a residual bit string formed by concatenating the lower bit string obtained by removing the upper bit string from the difference bit string for each set in units of blocks each having a predetermined number of bits. And a residual sequence compression unit that compresses the residual bit sequence based on extracting and deleting blocks including zero (0) or more of a predetermined number of bytes among the blocks divided in units of the block.

このように下位ビット列、即ち、浮動小数点形式の数値データにおける仮数部に対しても圧縮処理を行うことで、浮動小数点数の圧縮率を更に向上させることができる。同じ浮動小数点数が連続して入力されるような容易に予測可能データが入力される場合に特に有利である。   In this way, by performing compression processing on the lower-order bit string, that is, the mantissa part in the numerical data in the floating-point format, the compression ratio of the floating-point number can be further improved. This is particularly advantageous when easily predictable data is input such that the same floating point number is input continuously.

図1は、従来技術のFPC方式の概要を示すブロック図である。FIG. 1 is a block diagram showing an outline of a conventional FPC system. 図2は、従来技術の倍精度浮動小数点形式の数値データの予測困難性を示すグラフである。FIG. 2 is a graph showing the difficulty in predicting numerical data in the double precision floating point format of the prior art. 図3は、IEEE754で標準化されている倍精度浮動小数点データの表示形式を示す図である。FIG. 3 is a diagram showing a display format of double-precision floating point data standardized by IEEE754. 図4は、本発明の第1実施形態における圧縮方式の概要を示すブロック図である。FIG. 4 is a block diagram showing an outline of the compression method in the first embodiment of the present invention. 図5は、入力データAと予測データPから差分ビット列Dを生成するイメージ図である。FIG. 5 is an image diagram for generating a differential bit string D n from the input data An and the prediction data P n . 図6は、本発明の第1実施形態の圧縮方式における圧縮器5の詳細を示すブロック図である。FIG. 6 is a block diagram showing details of the compressor 5 in the compression method according to the first embodiment of the present invention. 図7は、本発明の第1の実施形態の圧縮方式におけるブロック組み替えに基づく再構築部の先行ビット列及び残余ビット列の形成を示すイメージ図である。FIG. 7 is an image diagram showing the formation of the preceding bit string and the remaining bit string of the reconstruction unit based on the block rearrangement in the compression method of the first embodiment of the present invention. 図8は、先行列圧縮部の圧縮先行ビット列の形成を示すイメージ図である。FIG. 8 is an image diagram showing the formation of the compressed preceding bit string of the previous matrix compression unit. 図9は、本発明の第2の実施形態の圧縮方式のアドレス再構築部におけるブロック入れ替えを示すイメージ図である。FIG. 9 is an image diagram showing block replacement in the address reconstruction unit of the compression method according to the second embodiment of this invention. 図10は、本発明の第2実施形態におけるアドレス再構築部におけるブロック入れ替え処理に係るより詳細なイメージ図である。FIG. 10 is a more detailed image diagram related to the block replacement process in the address restructuring unit in the second embodiment of the present invention. 図11は、本発明の第2実施形態におけるアドレス再構築部におけるブロック入れ替え処理を示すフローチャートである。FIG. 11 is a flowchart showing a block replacement process in the address restructuring unit in the second embodiment of the present invention. 図12は、本発明の第3実施形態における圧縮システムの改良の概要を示すブロック図である。FIG. 12 is a block diagram showing an outline of the improvement of the compression system in the third embodiment of the present invention. 図13は、本発明の第3実施形態における2つの予測値に基づく2つの差分値計算を示すイメージ図である。FIG. 13 is an image diagram showing two difference value calculations based on two predicted values in the third embodiment of the present invention. 図14は、本発明の第3実施形態における2つの差分値に基づく比較器出力を示すイメージ図である。FIG. 14 is an image diagram showing a comparator output based on two difference values in the third embodiment of the present invention. 図15は、発明の第3実施形態における先行ビット列の圧縮を示すイメージ図である。FIG. 15 is an image diagram showing compression of the preceding bit string in the third embodiment of the invention. 図16は、本発明の第4実施形態における浮動小数点形式の数値データの圧縮方式を示すブロック図である。FIG. 16 is a block diagram showing a compression method of numerical data in the floating point format according to the fourth embodiment of the present invention. 図17は、本発明の第4実施形態の残余列圧縮部における残余ビット集合列Rの形成を示すイメージ図である。FIG. 17 is an image diagram illustrating the formation of the residual bit set sequence R in the residual sequence compression unit according to the fourth embodiment of the present invention. 図18は、本発明の第4実施形態の残余列圧縮部において圧縮される残余ビット集合列R’を示すイメージ図である。FIG. 18 is an image diagram showing a residual bit set sequence R ′ that is compressed by the residual sequence compression unit according to the fourth embodiment of the present invention.

本発明の実施形態に係る圧縮・伸長システムを図面に基づいて説明する。尚、以下の実施形態は例示に過ぎず、特許請求の範囲に記載の発明がこれに限定されるものではない。   A compression / decompression system according to an embodiment of the present invention will be described with reference to the drawings. The following embodiments are merely examples, and the invention described in the claims is not limited thereto.

図3は、IEEE754で標準化されている倍精度浮動小数点形式の数値データを2進数のビット列で表示する概要図である。IEEE754で標準化されている倍精度浮動小数形式のデータは、以下の計算式に基づいて表されるものである。   FIG. 3 is a schematic diagram for displaying numerical data in the double precision floating point format standardized by IEEE 754 as a binary bit string. Data in the double precision floating point format standardized by IEEE 754 is expressed based on the following calculation formula.

ここで、「S」は符号部、「exp」は指数部、及び「fraction」は仮数部を示しており、図3のように2進数の表示形式において、上位ビットから順にそれぞれ1ビット、11ビット、及び52ビット、合計64ビットから形成される。   Here, “S” indicates a sign part, “exp” indicates an exponent part, and “fraction” indicates a mantissa part. In the binary display format as shown in FIG. Bits and 52 bits are formed from a total of 64 bits.

以下、IEEE754で標準化されている倍精度浮動小数点形式の数値データに基づいて各実施形態を記載するが、本発明は、特に注記するもののほか、64ビットの倍精度浮動小数点形式の数値データに限定されるものではなく、IEEE754で同様に標準化されている32ビットの単精度浮動小数点形式の数値データのみならず、この他多倍長精度の浮動小数点形式(例えば、128ビット)の数値データにも適用でき、符号部、指数部及び仮数部で上位から下位の順に構成される2進数のビット列で表現される浮動小数点形式の数値データ全般に適用できるものである。   In the following, each embodiment will be described based on numerical data in the double precision floating point format standardized by IEEE 754, but the present invention is limited to numerical data in 64-bit double precision floating point format in addition to what is particularly noted. Not only the 32-bit single precision floating point format numerical data similarly standardized by IEEE 754, but also other multi-precision floating point format numerical data (for example, 128 bits) The present invention can be applied to all numerical data in a floating-point format represented by a binary bit string composed of a sign part, an exponent part, and a mantissa part in order from the upper part to the lower part.

実施形態Embodiment

第1実施形態
図4は、本発明の圧縮システムの概要を示すブロック図である。入力される複数の浮動小数点形式の数値データに対し、コンピュータの中央処理装置は、レジスタやキャッシュ・メモリを含むメモリ操作を行いながら、各構成要素において次のように動作する。
First Embodiment FIG. 4 is a block diagram showing an outline of a compression system of the present invention. The central processing unit of the computer operates as follows in each component while performing memory operations including a register and a cache memory with respect to a plurality of numerical data in a floating point format that are input.

入力列1は、連続して入力されるN個の浮動小数点形式の入力データA(n=1,2,・・・,N)を示している(Nは1以上の整数)。入力データAは、差分器4に順次入力されるとともに、遅延器2において1クロック分遅延されて遅延器2から結合される予測器3に入力される。予測器3では、入力データAが差分器4に入力されるタイミングと同期して、既に入力されていた入力データA〜A(n−1)(但し、Aは入力列に先行する仮想的なデータ)から予測される浮動小数点形式の予測データPを予測して、予測器3から結合される差分器4に入力する。差分器4では、入力された入力データA及び予測された予測データPの各ビット列の差分(例えば、排他的論理和)を計算し、差分ビット列Dとして出力する。 The input string 1 indicates N pieces of input data A n (n = 1, 2,..., N) in a floating point format that are continuously input (N is an integer of 1 or more). The input data An is sequentially input to the differentiator 4 and is also input to the predictor 3 that is delayed by one clock in the delay unit 2 and combined from the delay unit 2. In the predictor 3, the input data A 0 to A (n−1) that have already been input are synchronized with the timing at which the input data An is input to the differentiator 4 (where A 0 precedes the input string ). Prediction data P n in a floating-point format predicted from (virtual data) is predicted and input to the difference unit 4 coupled from the predictor 3. The differentiator 4, the entered input data A n and predicted difference of each bit string of the predicted data P n (e.g., exclusive OR) is calculated, and outputs as a difference bit string D n.

なお、図5に示したとおり、ここでの予測データPは、例えば、非特許文献2に開示される公知技術を適用して、入力データA〜A(n−1)から予測することができ、また、差分ビット列Dのビット列表現においては、予測的中率の高い上位ビットほど「0」の出現確率が高いと想定される(図2も参照)。 As shown in FIG. 5, the prediction data P n here is predicted from the input data A 0 to A (n−1) , for example, by applying a known technique disclosed in Non-Patent Document 2. In addition, in the bit string representation of the difference bit string D n , it is assumed that the higher-order bit having a higher predictive predictive value has a higher appearance probability of “0” (see also FIG. 2).

当該差分器4に結合される圧縮器5において、以下の図6に詳述する本発明の圧縮処理を行い、
を行う(Mは任意の自然数である)。
In the compressor 5 coupled to the differentiator 4, the compression processing of the present invention described in detail in FIG.
(M is an arbitrary natural number).

図6は、本発明の圧縮方式における圧縮器5内部の詳細を示すブロック図である。   FIG. 6 is a block diagram showing details inside the compressor 5 in the compression method of the present invention.

圧縮器5は、差分器4からの複数の差分ビット列Dを所定の数(ここではM個)の単位の組でメモリにバッファリングするバッファ部51、バッファリングされた1組の各差分ビット列Dについて、浮動小数点形式の符号部及び指数部に対応するビット列部分を含む所定のビット数からなる上位ビット列を、所定のビット数からなる1又はそれ以上のブロックに分割、及び当該分割されたブロックを上位から下位の順に組ごとに組み替えて連結を行い、先行ビット列としてバッファリングし、また、当該差分ビット列から上位ビット列を除いた下位ビット列を組ごとに連結して形成されるビット列を残余ビット列としてバッファリングする再構築部52、及び、当該先行ビット列に対して圧縮処理を行って出力する先行列圧縮部53を備えている。 Compressor 5, a plurality of difference bit string D n a predetermined number set for each differential bit string buffer 51, buffering for buffering in a memory a set of units of (M-number in this case) from the differentiator 4 For D n , an upper bit string consisting of a predetermined number of bits including a bit string portion corresponding to a sign part and an exponent part in a floating-point format is divided into one or more blocks consisting of a predetermined number of bits, and the divided The blocks are rearranged for each pair in order from the top to the bottom, concatenated, buffered as a preceding bit string, and a bit string formed by concatenating the lower bit string obtained by removing the upper bit string from the difference bit string for each group is a residual bit string A reconstructing unit 52 that performs buffering, and a pre-matrix compression unit 53 that performs compression processing on the preceding bit string and outputs the result Eteiru.

更に図6の再構築部52について説明すると、図7に示すような態様で、各データのビット列を上位から8ビット(1バイト)、4ビット(1/2バイト)、4ビット(1/2バイト)、及びそれ以外の48ビット(12バイト)の順にブロック分割し、上位ビット列のブロック(8ビット+4ビット+4ビット)および下位ビット列(48ビット)について、それぞれのブロックを組単位で組み替えて上位ブロックから順番に連結してメモリにバッファリングする、アドレス演算を行うアドレス再構築部521、先行ビット列をバッファリングする先行列バッファ522、及び残余ビット列をバッファリングする残余列バッファ523を備えている。   Further, the reconstructing unit 52 in FIG. 6 will be described. In the form shown in FIG. 7, the bit string of each data is converted into the upper 8 bits (1 byte), 4 bits (1/2 byte), 4 bits (1/2 Byte) and the other 48 bits (12 bytes) in that order, and the upper bit string block (8 bits + 4 bits + 4 bits) and the lower bit string (48 bits) are rearranged in units of groups. An address restructuring unit 521 for performing an address operation, which is connected in order from the block, and buffered in a memory, a destination matrix buffer 522 for buffering a preceding bit sequence, and a residual sequence buffer 523 for buffering a residual bit sequence are provided.

図2のグラフで示したとおり、本構成は、連続して入力される複数の入力浮動小数点に対してそれぞれ予測される予測データのうち、上位の数バイト部分については比較的高い予測的中率で予測できるという特徴に着目したものであり、所定のM個の差分ビット列のうち当該部分をブロック単位でまとめて組み替えた上で圧縮処理することで従来のFPCと比べて圧縮率を向上させるものである。   As shown in the graph of FIG. 2, this configuration has a relatively high predictive predictability for the upper several bytes of the predicted data that are predicted for each of a plurality of input floating-point numbers that are successively input. In particular, the compression rate is improved compared to conventional FPC by compressing the portion of the predetermined M number of difference bit strings after recombining them in units of blocks. It is.

ここで、図7に示す先行ビット列及び残余ビット列の構成について更に詳細に説明する。なお、ここでは簡単のためにM=4として説明するが、これに限定されるものではなく、Mは任意の自然数とすることができる。   Here, the configuration of the preceding bit string and the remaining bit string shown in FIG. 7 will be described in more detail. In addition, although it demonstrates as M = 4 here for simplicity, it is not limited to this, M can be made into arbitrary natural numbers.

差分器4から入力される複数のデータのうち、連続して入力される4個(即ち、M個)のデータのビット列(D〜D(n+3))がバッファ部51にバッファリングされる。ここで、各ビット列の上位2バイト(16ビット)は、符号部(上位1ビット)及びそれに続く指数部(11ビット)の計12ビットを含むものである。再構築部52では、各データのビット列を符号部(1ビット)と指数部(11ビット)を含む上位16ビット(2バイト)からなる上位ビット列、及びそれ以外の48ビット(6バイト)の下位ビット列に分離し、更に当該上位ビット列を8ビット(1バイト)の第1ブロック及び4ビット(1/2バイト)の2つの第2及び第3ブロックに分割する。ここで、2つの第2及び第3ブロックに分割しているのは、第1ブロック及び第2ブロックの合計12ビットが、符号部(上位1ビット)と指数部(11ビット)との合計12ビットに一致するようにするためである。図7では、第1ブロックがブロック〔1〕〜〔4〕、第2ブロックがブロック〔5〕〜〔8〕、そして第3ブロックがブロック〔9〕〜〔12〕である。なお、下位のブロックは、48ビット(6バイト)の下位ビット列でそのまま構成される(ブロックI〜IV)。 Of the plurality of data input from the differentiator 4, a bit string (D n to D (n + 3) ) of four (that is, M) data input in succession is buffered in the buffer unit 51. Here, the upper 2 bytes (16 bits) of each bit string include a total of 12 bits including a sign part (upper 1 bit) and an exponent part (11 bits) subsequent thereto. In the reconstructing unit 52, the bit string of each data is a high-order bit string consisting of high-order 16 bits (2 bytes) including a sign part (1 bit) and an exponent part (11 bits), and the other low-order bits of 48 bits (6 bytes) The upper bit string is further divided into a first block of 8 bits (1 byte) and two second and third blocks of 4 bits (1/2 bytes). Here, the division into two second and third blocks is that a total of 12 bits of the first block and the second block is a total of 12 of a sign part (upper 1 bit) and an exponent part (11 bits). This is to match the bits. In FIG. 7, the first block is blocks [1] to [4], the second block is blocks [5] to [8], and the third block is blocks [9] to [12]. The lower block is composed of a 48-bit (6 bytes) lower bit string as it is (blocks I to IV).

再構築部では、更に、図7に示すように、上位ビット列及び下位ビット列について、各ブロックを組単位で組み替えて上位ブロックから順に連結し、64ビットの先行ビット列L及び192ビットの残余ビット列Rとして形成して、メモリ(先行列バッファ522及び残余列バッファ523)にバッファリングする。即ち、形成される先行ビット列Lは、第1ブロック(ブロック〔1〕〜〔4〕)、第2ブロック(ブロック〔5〕〜〔8〕)、第3ブロック(ブロック〔9〕〜〔12〕)の順番で連結したものである。同様に、形成される残余ビット列Rは、ブロックI〜IVの順番で連結したものである。 Further, as shown in FIG. 7, the reconstruction unit rearranges each block in units of sets for the upper bit string and the lower bit string and concatenates them in order from the upper block, so that the 64-bit preceding bit string L i and the 192-bit remaining bit string R formed as i and buffered in the memory (first matrix buffer 522 and residual column buffer 523). That is, the formed preceding bit string L i includes the first block (blocks [1] to [4]), the second block (blocks [5] to [8]), and the third block (blocks [9] to [12]. ]) In order. Similarly, the remaining bit string R i formed is connected in the order of the blocks I to IV.

次いで、当該先行ビット列Lを先行列圧縮部53に入力し、図8に示すように圧縮先行ビット列(ζ+U)を形成する。即ち、形成された64ビットの先行ビット列Lについて、1ブロックを1バイト(即ち8ビット)として、先頭ブロックから値が零(0)の連続するブロック部分Zとそれ以外のブロック部分Uに分割し、Zの連続ブロック数(バイト数)zをカウントする。当該連続ブロック数zに基づいて先行ビット列Lを圧縮して圧縮先行ビット列を形成する。M=4である場合には、例えば、次の表2に表すテーブルを参照することで、8×zビットを3ビットに圧縮する。 Next, the preceding bit string L i is input to the preceding matrix compression unit 53, and a compressed preceding bit string (ζ + U i ) is formed as shown in FIG. That is, regarding the formed 64-bit preceding bit string L i , one block is one byte (that is, 8 bits), and a continuous block portion Z i whose value is zero (0) from the first block and the other block portions U i And the number of consecutive blocks (number of bytes) z of Z i is counted. Based on the continuous block number z, the preceding bit string L i is compressed to form a compressed preceding bit string. When M = 4, for example, by referring to the table shown in Table 2 below, 8 × z bits are compressed to 3 bits.

例えば、先行ビット列L全体が零(0)の場合には、64ビットの先行ビット列Lを3ビットにまで最大限圧縮することができる。そしてMが特に2の階乗(即ち、M=2)のときは、M×16(ビット)の先行ビット列Lを最大(m+1)ビットにまで圧縮することができることになる。 For example, when the entire preceding bit string L i is zero (0), the 64-bit preceding bit string L i can be compressed to the maximum to 3 bits. When M is a factorial of 2 (that is, M = 2 m ), the preceding bit string L i of M × 16 (bits) can be compressed to the maximum (m + 1) bits.

図8の例の場合、Zの連続ブロック数zは、「2」である。このときの3ビットのζは、表2より、「001」と表される。即ち、64ビット(先行ビット列L)のビット列を、3ビット(「001」;ζ)+48ビット(非零ブロック;U)の合計51ビットに圧縮することができている。 In the example of FIG. 8, the number z of consecutive blocks of Z i is “2”. The 3-bit ζ at this time is expressed as “001” from Table 2. That is, a 64-bit (preceding bit string L i ) bit string can be compressed to a total of 51 bits of 3 bits (“001”; ζ) +48 bits (non-zero block; U i ).

第2実施形態
本発明による第2の実施形態では、第1の実施形態における先行ビット列Lの圧縮率を向上させるために、アドレス再構築部521において、更に、図9〜図11に示すブロックの入れ替え処理を行う。
In a second embodiment according to the second embodiment the present invention, in order to improve the compression ratio of the preceding bit sequence L i in the first embodiment, the address reconstruction unit 521, further, the blocks shown in FIGS. 9 to 11 The replacement process is performed.

第1実施形態に基づく複数の浮動小数点形式の数値データに対するブロックへの分割及び組み替えに関する構成を実施する場合に、絶対値はほぼ等しいものの、符号部のビットのみが異なるような振動データに対する圧縮が不十分なものとなる場合があるという課題を解決することができる。   When implementing a configuration relating to division and recombination of a plurality of numerical data in the floating-point format according to the first embodiment, compression on vibration data in which only the bits of the sign part are different, although the absolute values are substantially equal. The problem that it may become inadequate can be solved.

図9に示すとおり、先行ビット列Lに対して、上位ブロックから順に非零ブロックがあるか検査し、また、下位ブロックから順に零ブロックがあるか検査し、それぞれブロックが存在し検出された場合には、ブロックの入れ替えを行う。これにより、先頭ブロックから値が零(0)の連続するブロック部分Zを拡張し、かつ、それ以外のブロック部分Uを短縮することができる。 As shown in FIG. 9, the preceding bit string L i is checked for non-zero blocks in order from the upper block, and is checked for zero blocks in order from the lower block, and each block exists and is detected. In this case, the blocks are replaced. As a result, the continuous block portion Z i having a value of zero (0) can be expanded from the first block, and the other block portions U i can be shortened.

伸長されたブロック部分Z’は、上述した表2の3ビットζに、入れ替えフラグ1ビット、及び入れ替えブロック位置を示すビット列(8ビット)を加えた合計12ビットのζ’に圧縮することができる。最終的には、先行ビット列Lは、当該12ビットのζ’にブロック入れ替え後のU’を連結したブロックに圧縮することができる(M=4の場合)。ここでの入れ替え位置を示すビット位置は、2×Mビット長のビットマップであり、入れ替えたブロック位置に対応するビットを「1」とするものである。 The decompressed block portion Z ′ i may be compressed into a total of 12 bits ζ ′ by adding 1 bit of the replacement flag and a bit string (8 bits) indicating the position of the replacement block to the 3 bits ζ of Table 2 described above. it can. Eventually, the preceding bit string L i can be compressed into a block in which U ′ i after block replacement is connected to the 12-bit ζ ′ (when M = 4). The bit position indicating the replacement position here is a 2 × M bit length bitmap, and the bit corresponding to the replaced block position is set to “1”.

図10は、第2実施形態における先行ビット列Lの別の実施例を示している。当該実施例を図11のフローチャートと共に説明する。尚、図10においても、M=4とし、また、1ブロックは1バイトで構成し、簡単のために先行ビット列L及びL’は16進数で表示している。 Figure 10 shows another embodiment of the prior bit sequence L i in the second embodiment. This embodiment will be described with reference to the flowchart of FIG. Also in FIG. 10, M = 4, one block is composed of 1 byte, and the preceding bit strings L i and L ′ i are displayed in hexadecimal for simplicity.

先行ビット列Lに対して、上位ブロック(ブロック1)から順に非零ブロックを検査する(S100)。ここでは、ブロック2が「80」であり、非零ブロックとして検出される(S110)。そして、先行ビット列Lに対して、下位ブロック(ブロック8)から順に零ブロックを検査する(S120)。ここでは、ブロック8が「00」であり、零ブロックとして検出される(S130)。この場合、それぞれの検査ブロック位置の関係が「2<8」を満たしていることから(S140)、ブロック2「80」とブロック8「00」とを入れ替えるように操作し(S150)、入れ替えフラグ・ビットを「1」にし(S160)、更に、入れ替えブロック位置ビット列の第2ビットと第8ビットをそれぞれ「1」にする(S170)。この処理の結果、ζ及びLは、図10に示すζ’及びL’のように更新される。 The prior bit sequence L i, to inspect the non-zero blocks from upper block (Block 1) in this order (S100). Here, block 2 is “80” and is detected as a non-zero block (S110). Then, for the preceding bit string L i , the zero block is checked in order from the lower block (block 8) (S120). Here, block 8 is “00” and is detected as a zero block (S130). In this case, since the relationship between the inspection block positions satisfies “2 <8” (S140), the block 2 “80” and the block 8 “00” are switched (S150). The bit is set to “1” (S160), and the second bit and the eighth bit of the replacement block position bit string are set to “1” (S170). As a result of this processing, ζ and L i are updated as ζ ′ and L ′ i shown in FIG.

引き続き、検査を繰り返して、ブロック3から順に非零ブロックを検査していき、ブロック5の「01」を検出する(S100及びS110)。また、ブロック7から順に零ブロックを検査していき、ブロック6の「00」を検出する(S120及びS130)。そして、それぞれの検査ブロック位置の関係が「5<6」であるので(S140)、同様に、これらのブロックを入れ替えるように操作し(S150)、入れ替えフラグ・ビットを「1」にして(S160)、更に入れ替えブロック位置ビット列の第5ビット及び第6ビットをそれぞれ「1」にする(S170)。この処理の結果、ζ’及びL’は図10に示すζ’’及びL’’のように更新される。 Subsequently, the inspection is repeated, and the non-zero blocks are inspected sequentially from the block 3 to detect “01” of the block 5 (S100 and S110). Further, the zero block is inspected in order from the block 7, and “00” of the block 6 is detected (S120 and S130). Since the relation between the inspection block positions is “5 <6” (S140), similarly, the operation is performed so that these blocks are replaced (S150), and the replacement flag bit is set to “1” (S160). Further, the fifth bit and the sixth bit of the replacement block position bit string are respectively set to “1” (S170). The result of this process, zeta ', and L' i is updated as zeta '' and L '' i shown in FIG. 10.

引き続き、検査を繰り返して、非零ブロックとしてブロック6を、零ブロックとしてブロック5を検出するが(S100〜S130)、検査ブロック位置の関係が「6>5」となり(S140)、これはすでに検査済みであることを意味するものであるため、繰り返しの検査処理を抜け、入れ替え処理を完了(END)する。   Subsequently, the inspection is repeated to detect the block 6 as a non-zero block and the block 5 as a zero block (S100 to S130), but the relationship between the inspection block positions becomes “6> 5” (S140). This means that it has already been completed, and the repeated inspection process is exited, and the replacement process is completed (END).

このような入れ替え処理により、第1実施形態では、先頭ブロックから値が零(0)の連続するブロック部分Zのブロック数z=1であったものが、第2実施形態では、先頭ブロックから値が零(0)の連続するブロック部分Z’のブロック数z’’=5とすることができ、圧縮率の向上に成功する。 By such a replacement process, in the first embodiment, the number of blocks z = 1 of the continuous block portion Z i whose value is zero (0) from the first block is different from the first block in the second embodiment. The number of blocks z ″ of consecutive block portions Z ′ i having a value of zero (0) can be set to 5 and the compression rate is successfully improved.

以上より、本実施形態では第1実施形態に対して圧縮率を更に向上させることができる。なお、上記入れ替え処理の各ステップは、一例を示しているに過ぎずこれに限定されることはない。即ち、ブロック同士を入れ替え、入れ替えフラグ・ビットを更新することができる処理であればどのような態様で実施してもよい。   As described above, in this embodiment, the compression rate can be further improved compared to the first embodiment. In addition, each step of the said replacement process is only an example, and is not limited to this. In other words, the processing may be performed in any manner as long as the processing can replace the blocks and update the replacement flag / bit.

第3実施形態
本発明による第3の実施形態は、主に、上記第1実施形態における、予測器3及び差分器4を用いて複数の入力された入力データA及び複数の予測された予測データPの各ビット列の差分(例えば、排他的論理和)から複数の差分ビット列Dを出力するという構成についての代替の実施の形態を示すものである。
Third Embodiment A third embodiment according to the present invention mainly includes a plurality of input data An and a plurality of predicted predictions using the predictor 3 and the differentiator 4 in the first embodiment. An alternative embodiment of a configuration in which a plurality of difference bit strings D n are output from the difference (for example, exclusive OR) of each bit string of data P n is shown.

図12に示すとおり、本実施形態では、2つの予測器31、32を用いて2つの異なる方式で2種類の予測値を計算する。差分器41、42において、2つの差分値を計算して圧縮器5’に出力する。そして、圧縮器5’が備える比較部50において所定のルールに基づいて差分値を当該2つの差分値から選択し、どちらの差分値を選択したかを示す選択ビットと共にバッファ部51’(図示せず)に内部出力する。この結果、圧縮器5’からの圧縮出力C’には、Mビット(この場合4ビット)の選択ビット列(選択信号)も含まれることになる。 As shown in FIG. 12, in this embodiment, two types of prediction values are calculated by using two different predictors 31 and 32 by two different methods. In the differentiators 41 and 42, two difference values are calculated and output to the compressor 5 '. Then, the comparison unit 50 provided in the compressor 5 ′ selects a difference value from the two difference values based on a predetermined rule, and a buffer unit 51 ′ (not shown) together with a selection bit indicating which difference value is selected. To output internally. As a result, the compressed output C ′ i from the compressor 5 ′ also includes a selection bit string (selection signal) of M bits (4 bits in this case).

以下、図12〜図15を用いて詳細に説明する。   Hereinafter, it demonstrates in detail using FIGS. 12-15.

第1実施形態においては、図5に示したとおり、入力データAが比較器4に入力されるタイミングと同期して、入力されていた入力データA〜A(n−1)から予測される予測データPを予測器3で予測し、差分器4において、入力データA及び予測データPの各ビット列の差分(例えば、排他的論理和)を計算し、差分ビット列Dとして出力している。これに対し、本実施形態においては、図12及び13に示すとおり、2つの予測器31、32を用いて同様に予測データP及びQをそれぞれ別々に予測し、当該2つの予測器31、32にそれぞれ結合される2つの差分器41、42を用いて入力データAと予測データP及びQとの各ビット列の差分(例えば、排他的論理和)をそれぞれ計算して、差分ビット列D及びEとして圧縮器5’にそれぞれ出力する。 In the first embodiment, as shown in FIG. 5, the input data An is predicted from the input data A 0 to A (n−1) that have been input in synchronization with the timing at which the input data An is input to the comparator 4. Prediction data P n is predicted by the predictor 3, and a difference (for example, exclusive OR) between each bit string of the input data An and the prediction data P n is calculated by the difference unit 4 and output as a difference bit string D n doing. On the other hand, in this embodiment, as shown in FIGS. 12 and 13, the prediction data P n and Q n are similarly predicted separately using the two predictors 31 and 32, and the two predictors 31 are used. , 32 are respectively used to calculate the difference (for example, exclusive OR) of each bit string between the input data An and the prediction data P n and Q n using the two differentiators 41 and 42 respectively coupled to the difference data. respectively output to the compressor 5 'as a bit string D n and E n.

圧縮器5’では、まず、比較部50によって、差分ビット列D及びEの比較・選択を行う。なお、当該比較・選択に際しては、所定のビット数からなるブロックに分割して処理を行うが、ここでのビット数は、1バイト(即ち8ビット)でも1ビットでもよく、任意の数とすることができる。ここでは、バイト単位でブロックを形成することを想定する。 The compressor 5 ', first, the comparison unit 50, performs the comparison and selection of the difference bit string D n and E n. In the comparison / selection, processing is performed by dividing into blocks each having a predetermined number of bits. The number of bits here may be 1 byte (that is, 8 bits) or 1 bit, and may be any number. be able to. Here, it is assumed that blocks are formed in units of bytes.

図14に8個のブロック(ブロック1〜8)からなる、64ビットの2つの差分ビット列D及びEの具体例を示す。なお、各ブロックの値は簡単のため16進数で表示している。比較部50では、各差分ビット列に対し、値が零(0)となる零ブロックの数bをカウントし、当該零ブロック数bが大きい方の差分ビット列を選択する。図14の場合は、差分ビット列D及びEの各零ブロック数b(=4)及びb(=2)の値より、値が大きい方の差分ビット列Dを選択出力Fとして出力する。その際、どちらの差分ビット列を選択したかを示す1ビットの選択信号Sを、例えばDを選択した場合はS=0、Eを選択した場合はS=1として、併せて出力する。 Composed of eight blocks (block 1-8) in FIG. 14 shows a specific example of the 64 two difference bit string D n and E n. Note that the value of each block is displayed in hexadecimal for simplicity. The comparison unit 50 counts the number b of zero blocks whose value is zero (0) for each difference bit string, and selects the difference bit string having the larger number of zero blocks b. In the case of FIG. 14, from the value of each zero block number b d (= 4) and b e (= 2) of the difference bit string D n and E n, the difference bit string D n having a larger value as the selected output F n Output. At that time, either 1-bit selection signal S n which indicates whether to select the difference bit string, for example, if you select the D n as S n = 1 If you select S n = 0, E n, together Output.

このように、予測器31、32での予測精度がより高いものに対する差分ビット列を、比較部で選択するように圧縮器を構成することにより、その後の圧縮処理における圧縮率を向上させることができる。   Thus, the compression rate in the subsequent compression processing can be improved by configuring the compressor so that the comparison unit selects the difference bit string for the prediction accuracy higher in the predictors 31 and 32. .

図15は、本実施形態の圧縮器5’において、先行列バッファ522にバッファリングされた64ビットの先行ビット列Lの圧縮に係る構成を図示したものである。尚、ここでもM=4と仮定しており、先行ビット列L自体は第1実施形態において説明したのと同様に構成される。また、当該先行ビット列Lから構成されるζ及びUについても第1実施形態と同様である(図8参照)。先行ビット列Lは、このζに、1×4ビット(即ちMビット)の選択信号S〜S(n+3)を加えて圧縮することができる。 Figure 15 is the compressor 5 'of the present embodiment, illustrates the configuration of the compression of the preceding bit sequence L i of 64 bits buffered in the leading column buffer 522. Here, it is assumed that M = 4, and the preceding bit string Li itself is configured in the same manner as described in the first embodiment. Also, ζ and U i formed from the preceding bit string L i are the same as in the first embodiment (see FIG. 8). The preceding bit string L i can be compressed by adding 1 × 4 bits (that is, M bits) of selection signals S n to S (n + 3) to this ζ.

本発明は、本実施形態における差分ビット列の選択に係る構成に、更に実施形態2における先行ビット列に対するブロックの入れ替えに係る構成を組み合わせることにより、より一層データの圧縮率を向上させることができる。   The present invention can further improve the data compression rate by combining the configuration relating to the selection of the difference bit string in this embodiment with the configuration relating to the block replacement for the preceding bit string in the second embodiment.

なお、上述した差分ビット列D及びEの比較・選択について、差分器41、42に結合するように配置された上記比較部50で比較・選択を実施するのに替えて、差分ビット列D及びE両方に対してバッファ部及び再構築部での処理並びにバッファリングを実施し、及び、先行列バッファから比較部50を結合するように比較部50を配置して、当該比較部50で先行列バッファに対して同様の比較・選択の処理を行うように構成することも可能である。 Note that the compare-select the difference bit string D n and E n described above, instead of carrying out the comparison and selection by the comparison part 50 arranged to be coupled to the differentiator 41 and 42, the difference bit string D n and executes processing and buffering at the buffer portion and the reconstruction unit for both E n, and, by placing the comparing unit 50 to couple the comparator unit 50 from the leading column buffer, in the comparison unit 50 A similar comparison / selection process may be performed on the previous matrix buffer.

以上の実施形態1〜3においては、IEEE754に規定される倍精度浮動小数点形式の数値データのビット列に対して、ブロックの分割をバイト単位(即ち、8ビット単位)により実施するものであるが、本発明はこれに限定されるものではなく、IEEE754に規定されるように、浮動小数点形式の数値データが符号部、指数部及び仮数部を用いて表現され、かつ、2進数のビット列が上位からこの順序で構成されるものであれば任意のデータに対して実現することができ、また、図7に示した分割するブロックの単位も、先行列を構成する上位ビット列が符号部及び指数部を含むものであればよく、バイト単位に限定されず、任意のビット数でよい。即ち、符号部及び指数部のビット数で分割ブロックを構成してもよく、更には符号部及び指数部のビット数の約数で1ブロックを構成し、複数ブロックで符号部及び指数部を含む上位ビット列としてもよい。   In the first to third embodiments described above, block division is performed in units of bytes (that is, in units of 8 bits) with respect to a bit string of numerical data in the double-precision floating point format defined in IEEE754. The present invention is not limited to this, and as specified in IEEE 754, numerical data in a floating-point format is expressed using a sign part, an exponent part, and a mantissa part, and a binary bit string is displayed from the upper part. As long as it is configured in this order, it can be realized for arbitrary data, and the unit of the block shown in FIG. As long as it is included, it is not limited to a byte unit, and may be an arbitrary number of bits. That is, a divided block may be constituted by the number of bits of the sign part and the exponent part, and further, one block is constituted by a divisor of the number of bits of the sign part and the exponent part, and the sign part and the exponent part are included in a plurality of blocks. It may be an upper bit string.

第4実施形態
上述した実施形態1〜3では、先行ビット列に対して圧縮処理を行う構成であったが、第4の実施形態では、更に、残余ビット列に対しても圧縮処理を行う。
Fourth Embodiment In the first to third embodiments described above, the compression process is performed on the preceding bit string. In the fourth embodiment, the compression process is further performed on the remaining bit string.

本発明は、上述のとおり浮動小数点形式の数値データの予測困難性に着目したものであり、これを前提とした上で浮動小数点形式の数値データの圧縮率を向上させるものである。   The present invention pays attention to the difficulty of predicting the numerical data in the floating-point format as described above, and improves the compression rate of the numerical data in the floating-point format on the assumption of this.

これに対し、同じ値のデータが連続するような一般に容易に予測可能とされるデータに対してこのような圧縮方式を適用した場合には、先行技術文献に記載されるような従来技術を適用した場合と比べて圧縮率が同等若しくはそれ以下になることも想定される。   On the other hand, when such a compression method is applied to data that is generally easily predictable such that data of the same value continues, the prior art as described in the prior art document is applied. It is also assumed that the compression rate is equal to or lower than that in the case of the above.

そこで、本実施形態では、このような容易に予測可能な浮動小数点形式の数値データが入力された場合でも圧縮率を向上させるため、更に、残余ビット列に対して、以下に説明する圧縮方式を適用することにより、圧縮率を向上させる。   Therefore, in this embodiment, in order to improve the compression rate even when such easily predictable numerical data in the floating-point format is input, the compression method described below is applied to the remaining bit string. By doing so, the compression rate is improved.

図16は、本実施形態における浮動小数点形式の数値データの圧縮システムを表すブロック図である。図6と比べて、残余列圧縮部54が追加されている。残余列圧縮部54は、残余列バッファ523にバッファリングされている残余ビット列の入力を受け、圧縮処理を行って圧縮出力をするものである。尚、残余列圧縮部54以外の各構成要素については、上述の実施形態1〜3に基づいて実現することができる。   FIG. 16 is a block diagram showing a compression system for numerical data in the floating point format according to this embodiment. Compared to FIG. 6, a residual string compression unit 54 is added. The residual sequence compression unit 54 receives the input of the residual bit sequence buffered in the residual sequence buffer 523, performs a compression process, and outputs a compressed output. In addition, about each component other than the residual sequence compression part 54, it can implement | achieve based on the above-mentioned Embodiment 1-3.

以下に、図17〜図18を用いて残余列圧縮部54における残余ビット列Rに対する圧縮方式について説明する。尚、上述のとおり、残余ビット列RはM個の48ビット(即ち、6バイト)のビット列で構成される(図7参照)。 Hereinafter, a compression method for the residual bit string R i in the residual string compression unit 54 will be described with reference to FIGS. 17 to 18. As described above, the remaining bit string R i is composed of M 48-bit (that is, 6-byte) bit strings (see FIG. 7).

図17は、残余列圧縮部54において、残余ビット列Rについて
をバッファリングしてまとめて連結し、残余ビットの集合列Rを形成する構成について記載している。ここでは、残余ビット列RにおけるM個の6バイト列をr(i,1)〜r(i,M)としている。このようにして形成される残余ビット集合列Rは、6×Nバイト長のものとなる。残余ビット集合列Rに対し、図18に示すように6バイトの
の中から零(0)が6バイト連続する(即ち、値が0)もの、又は零(0)が5バイト含まれるものを抽出して、この抽出した位置を示す位置列Hを形成する。尚、零(0)が5バイト含まれるr(i,j)については、当該r(i,j)内の非零(0でない)となるバイトの位置、及びそのビット列を別途記憶する。図18においては、r(i0,1)及びr(i1,3)が、零(0)が6バイト連続するもの又は零(0)が5バイト含まれるものに該当し、これらの位置をH及びHとして位置列Hを生成する。
FIG. 17 shows the remaining bit string R i in the remaining string compression unit 54.
Are buffered and connected together to form a set sequence R of remaining bits. Here, M 6-byte sequences in the remaining bit sequence R i are r (i, 1) to r (i, M) . The remaining bit set sequence R formed in this way has a length of 6 × N bytes. For the remaining bit set sequence R, as shown in FIG.
Among them, zero (0) continuous 6 bytes (that is, the value is 0) or zero (0) containing 5 bytes are extracted, and a position sequence H indicating the extracted position is formed. For r (i, j) containing 5 bytes of zero (0), the position of the non-zero (not 0) byte in r (i, j) and its bit string are stored separately. In FIG. 18, r (i0,1) and r (i1,3) correspond to a case in which zero (0) is continuous for 6 bytes or a case in which zero (0) is included in 5 bytes. A position sequence H is generated as 1 and H 2 .

より具体的には、H=M×(i−1)+1、H=M×(i−1)+3の値から成る位置列Hを形成することになる。ここで、位置列Hの各構成要素は、nバイト長となる。nは、位置を記憶するために必要な容量であり、6バイトより小さくて済むようにする。 More specifically, a position row H having values H 1 = M × (i 0 −1) +1 and H 2 = M × (i 1 −1) +3 is formed. Here, each component of the position sequence H has a length of nh bytes. n h is a capacity necessary for storing the position, and is smaller than 6 bytes.

一方、残余ビット集合列Rは、当該残余ビット集合列Rから、これらr(i0,1)及びr(i1,3)を削除することで圧縮され、圧縮残余ビット集合列R’が形成される。 On the other hand, the residual bit set sequence R is compressed by deleting these r (i0,1) and r (i1,3) from the residual bit set sequence R, thereby forming a compressed residual bit set sequence R ′. .

この結果、当初6×Nバイト長だった残余ビット集合列Rは、(6×N−2×6)バイト長の圧縮残余ビット集合列R’に圧縮することができる。圧縮残余ビット集合列R’及び位置列Hを圧縮出力として出力することで圧縮処理は終了する。   As a result, the residual bit set sequence R that was initially 6 × N bytes long can be compressed into a compressed residual bit set sequence R ′ having a length of (6 × N−2 × 6) bytes. The compression residual bit set sequence R ′ and the position sequence H are output as compressed outputs to complete the compression process.

本発明は、本実施形態において説明した残余ビット列に対する圧縮処理を、実施形態1〜3で記載した先行ビット列圧縮処理と併せて実施することで、特に、予測が容易な浮動小数点形式の数値データが連続して入力されるような場合に有効なものとなる。   The present invention implements the compression process for the residual bit string described in the present embodiment in combination with the preceding bit string compression process described in the first to third embodiments, so that the numerical data in the floating-point format that is easy to predict can be obtained. This is effective for continuous input.

なお、本実施形態における位置列Hは、特定のr(i,j)の絶対位置を構成要素とするものであり、各構成要素は6バイトより小さい値で構成されるものであるが、特に実装上の観点からは、絶対位置ではなく相対位置として1バイトで各値を表現することができるようにし、当該相対位置、非零バイトr(i,j)の位置、非零バイトr(i,j)のビットパターンの3バイトを一組として非零バイトr(i,j)の出力とするようにすることもできる。更に、相対位置列に同じ値が連続して含まれる場合には、例えば、ランレングス法による圧縮手法を適用することにより、更なる数値データの圧縮が可能となる。 Note that the position sequence H in the present embodiment has the absolute position of a specific r (i, j) as a constituent element, and each constituent element is configured with a value smaller than 6 bytes. From an implementation point of view, each value can be expressed by 1 byte as a relative position, not an absolute position, and the relative position, the position of the non-zero byte r (i, j) , the non-zero byte r (i , J) can also be output as a non-zero byte r (i, j), with 3 bytes of the bit pattern as a set. Furthermore, when the same value is continuously included in the relative position row, for example, by applying a compression method by a run length method, it is possible to further compress numerical data.

以上、本発明の第1実施形態〜第4実施形態に係る連続して入力される複数の浮動小数点形式の数値データの圧縮方式について説明した。これらの実施形態の説明から分かるとおり、本圧縮方式は可逆式の圧縮方式であり、入力データA(n=1,2,・・・,N)に対する
について、i=1,2・・・の順に圧縮動作と逆動作を行うことで、圧縮出力Cを伸長して入力データA(n=1,2,・・・,N)を復元することが可能である。
Heretofore, the compression method for a plurality of numerical values in the floating point format that are successively input according to the first to fourth embodiments of the present invention has been described. As can be seen from the description of these embodiments, the present compression method is a reversible compression method, and can be applied to input data A n (n = 1, 2,..., N).
, The compressed output C i is expanded and the input data A n (n = 1, 2,..., N) is restored by performing the reverse operation to the compression operation in the order of i = 1, 2,. It is possible.

圧縮結果Compression result

表3は、上述した表1に本願発明の一実施形態に基づいて実装し取得したデータを追加したものである。表3のとおり、本願発明の浮動小数点データの圧縮方式は、従来技術のFPC方式と比較すると、相対的に圧縮率の向上を実現することができている。    Table 3 is obtained by adding data obtained by implementing and acquiring the data based on one embodiment of the present invention to Table 1 described above. As shown in Table 3, the compression method of the floating point data of the present invention can realize a relatively improved compression rate as compared with the FPC method of the prior art.

産業上の利用分野Industrial application fields

本発明の圧縮及び伸長システムは、連続して入力される複数の浮動小数点形式の数値入力データを効果的に圧縮してデータを取り扱うことができるため、大規模データを特にIEEE754に規定される倍精度浮動小数点形式において処理し、メモリに記憶する必要があるようなアプリケーションにおいて、有利なものとなる。   Since the compression and decompression system of the present invention can effectively compress numerical input data of a plurality of floating-point formats that are successively input and handle the data, the large-scale data is particularly doubled as defined in IEEE754. This is advantageous for applications that need to be processed in precision floating point format and stored in memory.

具体的には、(i)表計算ソフトウェアにおいてセルに記憶する大規模データを浮動小数点形式の数値データとして記憶する場合、(ii)科学技術計算ソフトウェアの計算経過を主記憶内に保存する場合、(iii)フライトレコーダやドライブレコーダにおいて処理される実時間データのログを圧縮して記憶する場合、宇宙観測機から地球への通信といった狭帯域通信路において大規模データの通信を必要とする場合に、本発明によるシステム及び方法は特に有効なものとなる。   Specifically, (i) when storing large-scale data stored in a cell in spreadsheet software as numerical data in a floating-point format, (ii) when storing calculation progress of scientific and technological calculation software in main memory, (Iii) When compressing and storing a log of real-time data processed by a flight recorder or drive recorder, when communication of large-scale data is required in a narrow-band communication path such as communication from a space observing device to the earth The system and method according to the present invention will be particularly effective.

Claims (7)

連続して入力される複数の入力データを各前記入力データに対する予測データに基づいて圧縮するシステムであって、
前記入力データ及び前記予測データの浮動小数点形式が、所定のビット数を有する符号部、指数部及び仮数部の順で表される2進数のビット列からなるように構成され、
前記入力データのビット列及び前記予測データのビット列のそれぞれの差分ビット列を所定の数の単位の組でバッファリングするバッファ部と、
前記バッファリングされた差分ビット列のそれぞれから、前記符号部及び前記指数部に対応するビット列部分を含む所定の数のビット数からなる上位ビット列を、所定のビット数からなる1以上のブロックに分割、及び該分割されたブロックを上位から下位の順に前記組ごとに組み替えて連結を行うことにより、先行ビット列としてバッファリングする再構築部であって、更に、前記連結が行われた先行ビット列に対して、上位のブロックから順に値が非零となるブロックを検査し、及び下位のブロックから順に値が零となるブロックを検査し、当該非零ブロック及び当該零ブロックがそれぞれ検出された場合には、これらを入れ替えるように構成される、再構築部と、
前記バッファリングされた先行ビット列ついて、先頭ブロックからの値が零となるブロックの連続数に基づき前記先行ビット列を圧縮して圧縮先行ビット列を形成する先行列圧縮部と、を含むシステム。
A system for compressing a plurality of input data that are continuously input based on prediction data for each of the input data,
The floating point format of the input data and the prediction data is configured to include a binary bit string represented in the order of a sign part having a predetermined number of bits, an exponent part, and a mantissa part,
A buffer unit that buffers a difference bit string of each of the bit string of the input data and the bit string of the prediction data in a set of a predetermined number of units;
Dividing a high-order bit string consisting of a predetermined number of bits including a bit string portion corresponding to the sign part and the exponent part from each of the buffered difference bit strings into one or more blocks consisting of a predetermined number of bits, And a reconstructing unit that buffers the divided blocks by rearranging them for each set in order from the top to the bottom, thereby buffering them as a preceding bit string , and further, for the preceding bit string that has been linked If the block whose value is non-zero in order from the upper block and the block whose value is zero in order from the lower block are inspected, and the non-zero block and the zero block are respectively detected, A reconstruction unit configured to replace them ;
A pre-matrix compression unit that compresses the preceding bit string based on the number of consecutive blocks in which the value from the first block is zero with respect to the buffered preceding bit string, and forms a compressed preceding bit string.
請求項1に記載のシステムにおいて、
前記先行列圧縮部において形成される前記圧縮先行ビット列が、更に、前記入れ替えたブロックの位置を示すビット列を含む、システム。
The system of claim 1, wherein
The system, wherein the compression preceding bit string formed in the prior matrix compression unit further includes a bit string indicating a position of the replaced block.
請求項1又は2に記載のシステムにおいて、前記予測データが第1の予測データ及び第2の予測データを含み、前記システムは、更に、
前記バッファ部においてバッファリングされる前記差分ビット列が、前記入力データのビット列と前記第1予測データ及び前記第2予測データのビット列とのそれぞれの差分による第1の差分ビット列及び第2の差分ビット列から選択されて、前記バッファ部に出力される比較部を含み、
該選択は、前記第1差分ビット列及び前記第2差分ビット列がそれぞれ備える前記所定のビット数のブロックの数に基づいて行われる、システム。
3. The system according to claim 1 or 2, wherein the prediction data includes first prediction data and second prediction data, the system further comprising:
The difference bit string buffered in the buffer unit is based on a first difference bit string and a second difference bit string that are the differences between the bit string of the input data and the bit string of the first prediction data and the second prediction data. A comparison unit selected and output to the buffer unit;
The selection is performed based on the number of blocks having the predetermined number of bits included in each of the first differential bit string and the second differential bit string.
請求項1から3のいずれか1項に記載のシステムにおいて、前記入力データ及び前記予測データが、IEEE754に規定される64ビットの倍精度浮動小数点形式のデータであり、
前記再構築部で分割されるブロックがバイト単位であり、更に、前記差分ビット列の上位ビット列が、1バイトの第1のブロック、1/2バイトの第2のブロック、及び1/2バイトの第3のブロックの順に分割して形成されることを含む、システム。
The system according to any one of claims 1 to 3, wherein the input data and the prediction data are 64-bit double-precision floating-point format data defined in IEEE754.
The blocks divided by the reconstruction unit are in units of bytes, and the upper bit string of the difference bit string is a 1-byte first block, a 1 / 2-byte second block, and a 1 / 2-byte first block. A system including being divided and formed in the order of three blocks.
請求項1から3のいずれか1項に記載のシステムにおいて、
前記上位ビット列が、前記符号部及び前記指数部に対応するビット列部分を含み、前記再構築部で分割されるブロックのビット数が、前記上位ビット列のビット数に基づいて決定される、システム。
The system according to any one of claims 1 to 3,
The upper bit string comprises a bit string portion corresponding to the code portion and the exponent part, the number of bits in each block divided by the reconstruction unit is determined based on the number of bits of the upper bit string, the system .
請求項1から5のいずれか1項に記載のシステムにおいて、
前記再構築部が、更に、前記差分ビット列から前記上位ビット列を除いた下位ビット列を組ごとに連結して形成される残余ビット列を、所定のビット数からなる第4のブロックの単位で分割するように構成され、更に、
該第4のブロックの単位で分割された各ブロックのうち、零が所定のバイト数以上含まれるブロックを抽出及び削除することに基づいて、前記残余ビット列を圧縮する残余列圧縮部を備える、システム。
The system according to any one of claims 1 to 5,
The reconstructing unit further divides a residual bit string formed by concatenating a lower bit string obtained by removing the upper bit string from the difference bit string for each set in units of a fourth block having a predetermined number of bits. In addition,
A system comprising: a residual sequence compression unit that compresses the residual bit sequence based on extracting and deleting a block including zero or more of a predetermined number of bytes among the blocks divided in units of the fourth block .
連続して入力される複数の入力データを各前記入力データに対する予測データに基づいて圧縮する方法であって、
該方法は、コンピュータによって実施され、
前記入力データ及び前記予測データの浮動小数点形式が、所定のビット数を有する符号部、指数部及び仮数部の順で表される2進数のビット列からなるように構成され、
前記入力データのビット列及び前記予測データのビット列のそれぞれの差分ビット列を所定の数の単位の組でメモリにバッファリングするバッファ・ステップと、
前記バッファリングされた差分ビット列のそれぞれから、前記符号部及び前記指数部に対応するビット列部分を含む所定のビット数からなる上位ビット列を、所定のビット数からなる1以上のブロックに分割、及び該分割されたブロックを上位から下位の順に前記組ごとに組み替えて連結を行うことにより、先行ビット列としてバッファリングする再構築ステップと、
前記バッファリングされた先行ビット列について、先頭ブロックからの値が零となるブロックの連続数に基づき前記先行ビット列を圧縮して圧縮先行ビット列を形成する先行列圧縮ステップと、を含み、
前記再構築ステップが、更に、前記連結された先行ビット列に対して、上位のブロックから順に値が非零となるブロックを検査し、及び下位のブロックから順に値が零となるブロックを検査し、当該非零ブロック及び当該零ブロックがそれぞれ検出された場合には、これらを入れ替えるように構成されることを特徴とする、方法。
A method of compressing a plurality of input data continuously input based on prediction data for each of the input data,
The method is implemented by a computer;
The floating point format of the input data and the prediction data is configured to include a binary bit string represented in the order of a sign part having a predetermined number of bits, an exponent part, and a mantissa part,
A buffer step of buffering a difference bit string of each of the bit string of the input data and the bit string of the prediction data in a memory in a set of a predetermined number of units;
Dividing each of the buffered difference bit sequences into an upper bit sequence consisting of a predetermined number of bits including a bit sequence corresponding to the sign part and the exponent part into one or more blocks consisting of a predetermined number of bits; and Reconstructing step of buffering as a preceding bit string by recombining the divided blocks for each set in order from the top to the bottom and performing concatenation;
A pre-matrix compression step for compressing the preceding bit string based on the number of consecutive blocks whose value from the first block is zero for the buffered preceding bit string,
The reconstructing step further inspects the concatenated preceding bit string for blocks having a non-zero value in order from the upper block, and for blocks having a value of zero in order from the lower block, A method, characterized in that the non-zero block and the zero block are each configured to be replaced if detected.
JP2011126795A 2011-06-06 2011-06-06 Numerical data compression system and method Active JP5762151B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011126795A JP5762151B2 (en) 2011-06-06 2011-06-06 Numerical data compression system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011126795A JP5762151B2 (en) 2011-06-06 2011-06-06 Numerical data compression system and method

Publications (2)

Publication Number Publication Date
JP2012253696A JP2012253696A (en) 2012-12-20
JP5762151B2 true JP5762151B2 (en) 2015-08-12

Family

ID=47526056

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011126795A Active JP5762151B2 (en) 2011-06-06 2011-06-06 Numerical data compression system and method

Country Status (1)

Country Link
JP (1) JP5762151B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9793919B1 (en) * 2016-12-08 2017-10-17 Advanced Micro Devices, Inc. Compression of frequent data values across narrow links

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04180413A (en) * 1990-11-15 1992-06-26 Nec Corp Binary floating point data compression and expansion system
JPH04195421A (en) * 1990-11-28 1992-07-15 Hitachi Ltd Compression method for floating-point data
JPH10190478A (en) * 1996-12-27 1998-07-21 Sony Corp Data compressing device and method, recording medium, and data expanding device and method
WO2004098066A1 (en) * 2003-04-28 2004-11-11 Nippon Telegraph And Telephone Corporation Floating point type digital signal reversible encoding method, decoding method, devices for them, and programs for them
JP4098679B2 (en) * 2003-06-27 2008-06-11 日本電信電話株式会社 Floating-point format signal sequence linear prediction analysis method, apparatus, program, and recording medium
JP5556809B2 (en) * 2009-03-30 2014-07-23 日本電気株式会社 Information processing system, information compression apparatus, information restoration apparatus, information processing method and program thereof
US8301803B2 (en) * 2009-10-23 2012-10-30 Samplify Systems, Inc. Block floating point compression of signal data

Also Published As

Publication number Publication date
JP2012253696A (en) 2012-12-20

Similar Documents

Publication Publication Date Title
EP2487798B1 (en) Information compression-coding device, its decoding device, method thereof, program thereof and recording medium storing the program
KR100894002B1 (en) Device and data method for selective compression and decompression and data format for compressed data
US20130007078A1 (en) Compression of floating-point data in encoding groups
JP4049793B2 (en) Floating point signal lossless encoding method, decoding method, apparatus thereof, program, and recording medium thereof
GB2542511A (en) Data compression
GB2567429A (en) Data compression
GB2530312A (en) Data compression
Chern et al. Reference based genome compression
KR20180019598A (en) Method, apparatus and system for compressing and decompressing semantic value data
JP2018534811A (en) Lossless data compression
CN102353894A (en) Method for testing SOC (System On Chip) based on reference vector and bit mask
Nandi et al. A compression technique based on optimality of LZW code (OLZW)
JP6227186B2 (en) Data compression apparatus, data expansion apparatus, data compression method, data expansion method, and program
Kaur Design and Implementation of Lzw data compression algorithm
Ledwon et al. Design and evaluation of an FPGA-based hardware accelerator for deflate data decompression
JP5762151B2 (en) Numerical data compression system and method
JP2016514404A (en) Entropy changer and method
JP4758494B2 (en) Circuit and method for converting bit length to code
CN107534446A (en) ASIC block for high bandwidth LZ77 decompressions
Sano et al. Segment-parallel predictor for FPGA-based hardware compressor and decompressor of floating-point data streams to enhance memory I/O bandwidth
JP5029684B2 (en) Pattern matching method and program
Long et al. GeneComp, a new reference-based compressor for SAM files
JPH0764765A (en) Data compressing device and data restoring device
Ochoa et al. AliCo: a new efficient representation for SAM files
WO2019155556A1 (en) Matrix compression device, compressed matrix access device and method, and computer readable medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140501

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150420

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150511

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150609

R150 Certificate of patent or registration of utility model

Ref document number: 5762151

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250