Column structure based block floating point mantissa compression representation generation representation method and device
By compressing the block floating-point mantissa matrix using column structure and utilizing the structural rules of the mantissa matrix, a compressed mantissa representation is generated, which solves the problem of a large mantissa storage ratio, improves data storage and access efficiency, and is suitable for neural network computing.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- GUANGDONG UNIV OF TECH
- Filing Date
- 2026-04-01
- Publication Date
- 2026-07-31
AI Technical Summary
Existing block floating-point representation schemes store a large proportion of the mantissa portion, leading to increased data storage and access overhead. Furthermore, traditional compression methods fail to effectively utilize the column structure patterns of the mantissa matrix.
By dividing floating-point data into sub-data blocks and aligning the exponents, a mantissa matrix is constructed. Column segments are divided using a preset segment length. Uniform or non-uniform segments are identified and compressed. Non-uniform segments are optimized using approximate coding to generate a compressed mantissa representation.
It significantly reduces the storage size of tail data and improves data representation efficiency, making it suitable for storing weight data, activation data, and intermediate calculation results in neural network computation.
Smart Images

Figure CN122496048A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data compression, and in particular to a method and apparatus for generating compressed representations of block floating-point mantissas based on column structures. Background Technology
[0002] As the scale of artificial intelligence models continues to expand, the data storage requirements for large-scale models are constantly increasing. In related applications, large amounts of parameter data and intermediate data need to be frequently stored and retrieved; therefore, the data representation method has a significant impact on the overall system efficiency. To reduce the storage space required for data representation, researchers have proposed various low-precision data representation techniques.
[0003] To reduce data representation overhead, Block Floating-Point (BFP) representation has been proposed as an efficient data representation method. In BFP, a set of data shares the same exponent. By sharing the exponent, the number of bits occupied by exponent storage can be reduced, thereby improving data representation efficiency. Compared with traditional low-bit integer representation, BFP representation has a significant advantage in maintaining high numerical precision, and is therefore considered a data representation scheme suitable for large-scale model computation. Various improvement methods have been proposed for BFP representation in previous research.
[0004] However, existing block floating-point representation schemes mainly focus on optimizing the exponent representation or sub-block organization, with limited utilization of the structural characteristics of the mantissa itself. In block floating-point representation, each data element still needs to independently store its mantissa, thus the mantissa still occupies the majority of storage in the data representation. For example, in a sub-block containing multiple elements, if each element uses a fixed-length mantissa, the storage size of the mantissa will increase linearly with the size of the sub-block. This problem becomes more pronounced as the mantissa bit width increases, further increasing the burden of data storage and access. Further analysis of the process of converting floating-point data to block floating-point representation reveals that the mantissa of each element usually needs to be right-shifted during exponent alignment. During this process, the high-order regions of the mantissa often generate a large number of zero bits, while the low-order regions may exhibit a relatively consistent bit pattern. If the aligned mantissas are arranged in rows to construct a mantissa matrix, obvious structural patterns often appear in the column direction of the matrix, such as some columns being all zeros, all ones, or containing only a few different bits.
[0005] Since block floating-point mantissas typically consist of only a few bits, and traditional compression methods based on single numerical values struggle to effectively utilize this structural characteristic, existing research largely focuses on optimization at the numerical or sub-block levels, with less emphasis on compression from the perspective of the mantissa matrix's column structure. This results in the underutilization of potential data redundancy. Therefore, a data representation method is needed that can leverage the column structure characteristics of the block floating-point mantissa matrix to reduce the storage size of mantissa data while maintaining numerical accuracy, thereby reducing data storage and access overhead. Summary of the Invention
[0006] To overcome the shortcomings of the prior art, this invention provides a method and apparatus for generating compressed representations of block floating-point mantissas based on column structures, which can improve the data representation efficiency of block floating-point mantissas.
[0007] An embodiment of the present invention provides a method for generating a compressed representation of a block floating-point mantissa based on a column structure, comprising the following steps: The original floating-point data is divided into several sub-data blocks, and according to the shared exponent of the sub-data blocks, the mantissas in each sub-data block are aligned by exponent to obtain the block floating-point representation corresponding to each sub-data block. Based on the block floating-point representation, the mantissa matrix corresponding to the sub-data block is constructed, and each column of the mantissa matrix is divided according to the preset segment length to obtain several mantissa column segments. The category of each of the last digit segments is determined, and all the last digit segments are compressed and encoded according to their categories to obtain the compressed representation of the last digits corresponding to the sub-data block.
[0008] Furthermore, the step of dividing the original floating-point data into several sub-data blocks, and performing exponent alignment processing on all mantissas in each sub-data block according to the shared exponent of the sub-data blocks to obtain the block floating-point representation corresponding to each sub-data block, specifically includes: Assume that the original floating-point data contains If there are a number of floating-point data, then the original floating-point data can be represented as: ;in, and They represent the first The mantissa and exponent of the floating-point data; The A floating-point data is divided into several sub-data blocks, each of which contains... One data element; Based on the shared exponent of the sub-data blocks, all mantissas in the sub-data blocks are subjected to exponent alignment to obtain the block floating-point representation corresponding to each sub-data block; wherein, the shared exponent is the maximum value of the exponent in the sub-data block, i.e.: The specific calculation formula for the index alignment process is as follows: , Let be the alignment mantissa of the i-th data element in the block floating-point representation, and be the alignment mantissa of the i-th data element. The block floating-point representation corresponding to each of the sub-data blocks is: .
[0009] Furthermore, the step of constructing the mantissa matrix corresponding to the sub-data block based on the block floating-point representation specifically includes: Expand all the alignment mantissas bit by bit to obtain the expanded data corresponding to each alignment mantissa; wherein, let the bit width of the alignment mantissa be . Then the first The expanded data corresponding to each of the alignment tails can be represented as:
[0010] in, For the first The alignment tail number in the th order The bit value of each bit is determined by scanning the aligned mantissa bit by bit. , The bit index representing the aligned mantissa; Arrange the expanded data corresponding to all aligned mantissas row by row to obtain the mantissa matrix; wherein, the expression of the mantissa matrix is as follows: .
[0011] Furthermore, the step of dividing each column of the mantissa matrix into several mantissa column segments according to a preset segment length specifically includes: Each column of the mantissa matrix is segmented, with each segment having a length equal to a preset segment length, resulting in the plurality of mantissa column segments; wherein, the preset segment length is denoted as . Then, the segmented representation of the mantissa column starting from the i-th row in the j-th column of the mantissa matrix is as follows: .
[0012] Furthermore, determining the category of each of the last digit segment specifically includes: The values of each bit in the last segment are statistically analyzed, and the category of the last segment is determined based on the values. When all bits in the tail sequence segment have the same bit value, the tail sequence segment is determined to be a uniform segment. When there are different values among the bits in the tail sequence segment, the tail sequence segment is determined to be a non-uniform segment.
[0013] Preferably, after determining the category of each of the last digit segments, the method further includes: approximating non-uniform segments that meet preset conversion conditions as uniform segments; wherein, the approximation encoding process includes: Extract all bits in the non-uniform segment whose corresponding bit values differ from the dominant bit value to obtain the non-uniform bits; wherein, the dominant bit value is the bit value that appears most frequently in the non-uniform segment; The approximate encoding is completed by replacing the bit values of all the non-uniform bits with the main bit values.
[0014] Furthermore, the determination process for the preset conversion conditions includes: The number of non-uniform bits in the non-uniform segment is counted. When the number of non-uniform bits is less than a preset approximate threshold, the non-uniform segment is determined to meet the first condition. The bit positions of the non-uniform bits in the non-uniform segment are statistically analyzed. When all the bit positions of the non-uniform bits are to the right of the important bit positions, the non-uniform segment is determined to meet the second condition. The specific expression for the important bit positions is as follows:
[0015] When the non-uniform segment meets both the first and second conditions, it is determined that the non-uniform segment meets the preset conversion conditions.
[0016] Furthermore, the step of compressing and encoding all the tail number segments according to their categories to obtain the tail number compressed representation corresponding to the sub-data block specifically includes: When the tail sequence is segmented into uniform segments, the highest bit of the compressed representation corresponding to the uniform segment is set to 0, and a numerical bit is set after the highest bit to obtain the compressed representation corresponding to the uniform segment; wherein, the value of the numerical bit is the bit value of the uniform segment; When the tail sequence is segmented into non-uniform segments, the highest bit of the compressed representation corresponding to the tail sequence segment is set to 1, and the original bit sequence of the non-uniform segment is retained after the highest bit to obtain the compressed representation corresponding to the non-uniform segment. By combining the compressed representations of all uniform segments and the compressed representations of non-uniform segments, the mantissa compressed representation corresponding to the sub-data block is obtained.
[0017] Another embodiment of the present invention provides a block floating-point mantissa compressed representation generation device based on column structure, comprising: a mantissa matrix construction module, a column pattern detection module, and a column pattern compression module; The mantissa matrix construction module is used to divide the original floating-point data into several sub-data blocks, and perform exponent alignment processing on all mantissas in each sub-data block according to the shared exponent of the sub-data blocks to obtain the block floating-point representation corresponding to each sub-data block. Then, the mantissa matrix corresponding to the sub-data block is constructed according to the block floating-point representation. The column pattern detection module is used to divide each column of the mantissa matrix according to a preset segment length to obtain several mantissa column segments, and to determine the category of each mantissa column segment; wherein, the category includes uniform segments and non-uniform segments; The column mode compression module is used to compress and encode all the tail column segments according to the category of each tail column segment to obtain the tail compressed representation corresponding to the sub-data block.
[0018] Furthermore, the device also includes: an approximate encoding module; The approximate encoding module is used to approximate non-uniform segments that meet preset conversion conditions into uniform segments.
[0019] Compared with the prior art, the beneficial effects of the present invention are as follows: By leveraging the structural patterns of the mantissa matrix along the column dimension during block floating-point quantization, column-mode compression of the mantissa data can significantly reduce its storage size while maintaining high numerical accuracy. This reduces data storage and access overhead, thereby improving data representation efficiency. The data representation method proposed in this invention is not only applicable to general floating-point data compression scenarios but can also be applied to the representation and storage of weight data, activation data, and intermediate calculation results in neural network computation. Attached Figure Description
[0020] Figure 1 This is a flowchart illustrating a block floating-point mantissa compression representation generation method based on column structure, provided in an embodiment of the present invention.
[0021] Figure 2 This is a schematic diagram of a block floating-point mantissa compression representation generation device based on a column structure, provided for another embodiment of the present invention. Detailed Implementation
[0022] The accompanying drawings are for illustrative purposes only and should not be construed as limiting the scope of this patent. It will be understood by those skilled in the art that certain well-known structures and their descriptions may be omitted in the accompanying drawings.
[0023] The technical solution of the present invention will be further described below with reference to the accompanying drawings and embodiments.
[0024] Reference Figure 1The above is a flowchart illustrating a block floating-point mantissa compression representation generation method based on a column structure according to an embodiment of the present invention, including the following steps: S1: Divide the original floating-point data into several sub-data blocks, and perform exponent alignment processing on all mantissas in each sub-data block according to the shared exponent of the sub-data blocks to obtain the block floating-point representation corresponding to each sub-data block; S2: Based on the block floating-point representation, construct the mantissa matrix corresponding to the sub-data block, and divide each column of the mantissa matrix according to the preset segment length to obtain several mantissa column segments; S3: Determine the category of each of the last digit segments, and compress and encode all the last digit segments according to their categories to obtain the compressed representation of the last digits corresponding to the sub-data block.
[0025] For step S1, specifically, dividing the original floating-point data into several sub-data blocks, and performing exponent alignment processing on all mantissas in each sub-data block according to the shared exponent of the sub-data blocks to obtain the block floating-point representation corresponding to each sub-data block, specifically includes: Assume that the original floating-point data contains If there are a number of floating-point data, then the original floating-point data can be represented as: ;in, and They represent the first The mantissa and exponent of the floating-point data; The A floating-point data is divided into several sub-data blocks, each of which contains... One data element; Based on the shared exponent of the sub-data blocks, all mantissas in the sub-data blocks are subjected to exponent alignment to obtain the block floating-point representation corresponding to each sub-data block; wherein, the shared exponent is the maximum value of the exponent in the sub-data block, i.e.: The specific calculation formula for the index alignment process is as follows: , Let be the alignment mantissa of the i-th data element in the block floating-point representation, and be the alignment mantissa of the i-th data element. The block floating-point representation corresponding to each of the sub-data blocks is: .
[0026] In a preferred embodiment, suppose there exists floating-point data Its representation is as follows: ,in and They represent the first The mantissa and exponent of each data point. Then, the... floating-point data Divided into several sub-data blocks, each sub-data block contains If there are 1 data element, then: ,in Indicates the number of sub-data blocks.
[0027] set up Indicates the first The sharing index of each sub-data block is defined as the maximum value of the index within that sub-data block:
[0028] After determining the sharing index, the mantissas of each data point within the block need to be aligned according to the sharing index. Specifically, each mantissa is right-shifted as follows:
[0029] The right shift operation described above aligns all mantissas with the shared exponent within the same sub-data block, thereby forming the block floating-point representation corresponding to the sub-data block. The structure is as follows: .
[0030] For step S2, specifically, constructing the mantissa matrix corresponding to the sub-data block based on the block floating-point representation specifically includes: Expand all the alignment mantissas bit by bit to obtain the expanded data corresponding to each alignment mantissa; wherein, let the bit width of the alignment mantissa be . Then the first The expanded data corresponding to each of the alignment tails can be represented as:
[0031] in, For the first The alignment tail number in the th order The bit value of each bit is determined by scanning the aligned mantissa bit by bit. , The bit index representing the aligned mantissa; Arrange the expanded data corresponding to all aligned mantissas row by row to obtain the mantissa matrix; wherein, the expression of the mantissa matrix is as follows: .
[0032] In a preferred embodiment, each row of the mantissa matrix represents the mantissa of a block floating-point number, and each column represents bits with equal weights in the mantissa. By constructing the mantissa matrix and observing the structural features of the mantissa at the bit level along the column direction, a foundation can be provided for subsequent column pattern detection and compressed representation.
[0033] Furthermore, the step of dividing each column of the mantissa matrix into several mantissa column segments according to a preset segment length specifically includes: Each column of the mantissa matrix is segmented, with each segment having a length equal to a preset segment length, resulting in the plurality of mantissa column segments; wherein, the preset segment length is denoted as . Then, the segmented representation of the tail column starting from the i-th row in the j-th column of the tail matrix is as follows: .
[0034] In a preferred embodiment, after obtaining the mantissa matrix, the mantissa matrix is traversed column by column and segmented according to a preset length. Each column is segmented to obtain several segments of the last digit column. Each segment of the last digit column contains consecutive elements within the same column. Bit.
[0035] For step S3, specifically, determining the category of each of the last digit column segments includes: The values of each bit in the last segment are statistically analyzed, and the category of the last segment is determined based on the values. When all bits in the tail sequence segment have the same bit value, the tail sequence segment is determined to be a uniform segment. When there are different values among the bits in the tail sequence segment, the tail sequence segment is determined to be a non-uniform segment.
[0036] In a preferred embodiment, the mantissa matrix is scanned column by column, and the bit distribution of each mantissa column segment is determined to identify the category of the mantissa column segment. For each mantissa column segment, the values of each bit in the segment are counted. When all bit values in the segment are the same, the segment is determined to be a uniform segment; when both 0 and 1 exist in the segment, the segment is determined to be a non-uniform segment.
[0037] Preferably, after determining the category of each of the last digit segments, the method further includes: approximating non-uniform segments that meet preset conversion conditions as uniform segments; wherein, the approximation encoding process includes: Extract all bits in the non-uniform segment whose corresponding bit values differ from the dominant bit value to obtain the non-uniform bits; wherein, the dominant bit value is the bit value that appears most frequently in the non-uniform segment; The approximate encoding is completed by replacing the bit values of all the non-uniform bits with the main bit values.
[0038] Furthermore, the determination process for the preset conversion conditions includes: The number of non-uniform bits in the non-uniform segment is counted. When the number of non-uniform bits is less than a preset approximate threshold, the non-uniform segment is determined to meet the first condition. The bit positions of the non-uniform bits in the non-uniform segment are statistically analyzed. When all the bit positions of the non-uniform bits are to the right of the important bit positions, the non-uniform segment is determined to meet the second condition. The specific expression for the important bit positions is as follows:
[0039] When the non-uniform segment meets both the first and second conditions, it is determined that the non-uniform segment meets the preset conversion conditions.
[0040] In a preferred embodiment, to further reduce data storage and data transmission overhead, non-uniform segments that meet preset conversion conditions are memorized and approximated, and then converted into uniform segments to improve the compression efficiency of subsequent column mode compression steps.
[0041] First, count the number of bits in the non-uniform segment that differ from the dominant bit value, and record this number as . The dominant bit value is the bit value that appears most frequently in the segment and is used as the replacement reference during approximate encoding.
[0042] Subsequently, it is determined whether the non-uniform segment meets the preset transformation conditions. There are two preset transformation conditions, the first of which is... n < T ,in A preset threshold is used to limit the maximum number of bits that can be replaced during the approximate encoding process, thereby controlling the approximation error range.
[0043] The second condition is that all non-uniform bits in the non-uniform segment are not located at important bit positions. Here, the definition of the first... The important bit positions of the mantissa are ,in This indicates the position of the first bit with a value of 1 when scanning from the most significant bit to the least significant bit in the mantissa. The important bit position. It can be represented as:
[0044] Furthermore, during approximate encoding, substitution is only permitted for bits that meet the following conditions: This means that only the low-weight bits to the right of the important bits are allowed to be modified, while the important bits and the area to their left are not allowed to be modified. This is to avoid affecting the key significant bits of the mantissa.
[0045] When both of the above preset conversion conditions are met, the bits in the non-uniform segment that deviate from the main bit value are replaced with the main bit value, thereby converting the non-uniform segment into a uniform segment; when the above conditions are not met, the original bits of the non-uniform segment are left unprocessed.
[0046] By using the above approximate encoding mechanism, some non-uniform segments can be converted into uniform segments while ensuring that the important bits of the mantissa are not modified, thereby improving the compression efficiency of subsequent column mode compression steps.
[0047] Furthermore, the step of compressing and encoding all the tail number segments according to their categories to obtain the tail number compressed representation corresponding to the sub-data block specifically includes: When the tail sequence is segmented into uniform segments, the highest bit of the compressed representation corresponding to the uniform segment is set to 0, and a numerical bit is set after the highest bit to obtain the compressed representation corresponding to the uniform segment; wherein, the value of the numerical bit is the bit value of the uniform segment; When the tail sequence is segmented into non-uniform segments, the highest bit of the compressed representation corresponding to the tail sequence segment is set to 1, and the original bit sequence of the non-uniform segment is retained after the highest bit to obtain the compressed representation corresponding to the non-uniform segment. By combining the compressed representations of all uniform segments and the compressed representations of non-uniform segments, the mantissa compressed representation corresponding to the sub-data block is obtained.
[0048] In a preferred embodiment, after classifying the segments of the mantissa column, all identified uniform and non-uniform segments can be compressed and encoded to generate a compressed representation of the sub-data block. The compressed representation is formed by a combination of flag bits and data bits, used to represent the compressed encoding result of each segment in the mantissa matrix.
[0049] For each segment of the mantissa matrix Based on the mode type of the segment, the corresponding compression code is generated. Specifically: For a uniform segment, when the segment length When the segment is 0000, the compressed representation is 00, where the highest bit 0 indicates that the segment is a uniform segment and the lowest bit 0 indicates that the segment bit value is 0; when the segment is 1111, the compressed representation is 01, where the highest bit 0 indicates that the segment is a uniform segment and the lowest bit 1 indicates that the segment bit value is 1.
[0050] When the segment is non-uniform, a non-uniform segment encoding method is used for representation. Specifically, in the compressed representation, the highest bit is set to a flag bit 1 to indicate that the segment is non-uniform, while the original bit sequence of the segment is retained as the data part. For example, when the segment length... For segment 1100, since it is neither a segment entirely of zeros nor entirely of one segment, it is encoded as 11100, where the highest bit 1 indicates that the segment is a non-uniform segment. Subsequent... This represents the original bit sequence of the segment.
[0051] Using the above method, all mantissa columns in the mantissa matrix can be segmented and converted into a unified compressed encoding form, thereby obtaining the mantissa compressed representation of the sub-data block.
[0052] Reference Figure 2 The diagram below shows a block floating-point mantissa compression representation generation device based on column structure, which is provided in another embodiment of the present invention. The device includes: a mantissa matrix construction module 101, a column pattern detection module 102, and a column pattern compression module 103. The mantissa matrix construction module 101 is used to divide the original floating-point data into several sub-data blocks, and perform exponent alignment processing on all mantissas in each sub-data block according to the shared exponent of the sub-data blocks to obtain the block floating-point representation corresponding to each sub-data block. Then, the mantissa matrix corresponding to the sub-data block is constructed according to the block floating-point representation. The column pattern detection module 102 is used to divide each column of the tail matrix according to a preset segment length to obtain several tail column segments, and to determine the category of each tail column segment; wherein, the category includes uniform segments and non-uniform segments. The column mode compression module 103 is used to compress and encode all the last digit column segments according to the category of each last digit column segment to obtain the last digit compressed representation corresponding to the sub-data block.
[0053] Furthermore, the device also includes: an approximate encoding module 104; The approximate encoding module 104 is used to approximate non-uniform segments that meet preset conversion conditions into uniform segments.
[0054] Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the implementation of the present invention. Those skilled in the art can make other variations or modifications based on the above description. It is neither necessary nor possible to exhaustively describe all embodiments here. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the claims of the present invention.
Claims
1. A method for generating compressed representations of block floating-point mantissas based on column structures, characterized in that, Includes the following steps: The original floating-point data is divided into several sub-data blocks, and according to the shared exponent of the sub-data blocks, the mantissas in each sub-data block are aligned by exponent to obtain the block floating-point representation corresponding to each sub-data block. Based on the block floating-point representation, the mantissa matrix corresponding to the sub-data block is constructed, and each column of the mantissa matrix is divided according to the preset segment length to obtain several mantissa column segments. The category of each of the last digit segments is determined, and all the last digit segments are compressed and encoded according to their categories to obtain the compressed representation of the last digits corresponding to the sub-data block.
2. The block floating-point mantissa compression representation generation method based on column structure as described in claim 1, characterized in that, The process of dividing the original floating-point data into several sub-data blocks and performing exponent alignment on all mantissas in each sub-data block according to the shared exponent of the sub-data blocks to obtain the block floating-point representation corresponding to each sub-data block specifically includes: Assume that the original floating-point data contains If there are a number of floating-point data, then the original floating-point data can be represented as: ;in, and They represent the first The mantissa and exponent of the floating-point data; The A floating-point data is divided into several sub-data blocks, each of which contains... One data element; Based on the shared exponent of the sub-data blocks, all mantissas in the sub-data blocks are subjected to exponent alignment to obtain the block floating-point representation corresponding to each sub-data block; wherein, the shared exponent is the maximum value of the exponent in the sub-data block, i.e.: The specific calculation formula for the index alignment process is as follows: , Let be the alignment mantissa of the i-th data element in the block floating-point representation, and be the alignment mantissa of the i-th data element. The block floating-point representation corresponding to each of the sub-data blocks is: .
3. The block floating-point mantissa compression representation generation method based on column structure as described in claim 2, characterized in that, The step of constructing the mantissa matrix corresponding to the sub-data block based on the block floating-point representation specifically includes: Expand all the alignment mantissas bit by bit to obtain the expanded data corresponding to each alignment mantissa; wherein, let the bit width of the alignment mantissa be . Then the first The expanded data corresponding to each of the alignment tails can be represented as: in, For the first The alignment tail number in the th order The bit value of each bit is determined by scanning the aligned mantissa bit by bit. , The bit index representing the aligned mantissa; Arrange the expanded data corresponding to all aligned mantissas row by row to obtain the mantissa matrix; wherein, the expression of the mantissa matrix is as follows: .
4. The block floating-point mantissa compression representation generation method based on column structure as described in claim 1, characterized in that, Based on a preset segment length, each column of the mantissa matrix is divided into several mantissa column segments, specifically including: Each column of the mantissa matrix is segmented, with each segment having a length equal to a preset segment length, resulting in the plurality of mantissa column segments; wherein, the preset segment length is denoted as . Then, the segmented representation of the tail column starting from the i-th row in the j-th column of the tail matrix is as follows: .
5. The block floating-point mantissa compression representation generation method based on column structure as described in claim 1, characterized in that, The determination of the category of each segment of the last digit column specifically includes: The values of each bit in the last segment are statistically analyzed, and the category of the last segment is determined based on the values. When all bits in the tail sequence segment have the same bit value, the tail sequence segment is determined to be a uniform segment. When there are different values among the bits in the tail sequence segment, the tail sequence segment is determined to be a non-uniform segment.
6. The block floating-point mantissa compression representation generation method based on column structure as described in claim 5, characterized in that, After determining the category of each of the last digit segments, the method further includes: approximating non-uniform segments that meet preset conversion conditions as uniform segments; wherein, the approximation encoding process includes: Extract all bits in the non-uniform segment whose corresponding bit values differ from the dominant bit value to obtain the non-uniform bits; wherein, the dominant bit value is the bit value that appears most frequently in the non-uniform segment; The approximate encoding is completed by replacing the bit values of all the non-uniform bits with the main bit values.
7. The block floating-point mantissa compression representation generation method based on column structure as described in claim 6, characterized in that, The determination process for the preset conversion conditions includes: The number of non-uniform bits in the non-uniform segment is counted. When the number of non-uniform bits is less than a preset approximate threshold, the non-uniform segment is determined to meet the first condition. The bit positions of the non-uniform bits in the non-uniform segment are statistically analyzed. When all the bit positions of the non-uniform bits are to the right of the important bit positions, the non-uniform segment is determined to meet the second condition. The specific expression for the important bit positions is as follows: When the non-uniform segment meets both the first and second conditions, it is determined that the non-uniform segment meets the preset conversion conditions.
8. The block floating-point mantissa compression representation generation method based on column structure as described in claim 1, characterized in that, The step of compressing and encoding all the tail number segments according to their categories to obtain the tail number compressed representation corresponding to the sub-data block specifically includes: When the tail sequence is segmented into uniform segments, the highest bit of the compressed representation corresponding to the uniform segment is set to 0, and a numerical bit is set after the highest bit to obtain the compressed representation corresponding to the uniform segment; wherein, the value of the numerical bit is the bit value of the uniform segment; When the tail sequence is segmented into non-uniform segments, the highest bit of the compressed representation corresponding to the tail sequence segment is set to 1, and the original bit sequence of the non-uniform segment is retained after the highest bit to obtain the compressed representation corresponding to the non-uniform segment. By combining the compressed representations of all uniform segments and the compressed representations of non-uniform segments, the mantissa compressed representation corresponding to the sub-data block is obtained.
9. A block floating-point mantissa compression representation generation device based on column structure, characterized in that, include: The module includes a mantissa matrix construction module, a column pattern detection module, and a column pattern compression module. The mantissa matrix construction module is used to divide the original floating-point data into several sub-data blocks, and perform exponent alignment processing on all mantissas in each sub-data block according to the shared exponent of the sub-data blocks to obtain the block floating-point representation corresponding to each sub-data block. Then, the mantissa matrix corresponding to the sub-data block is constructed according to the block floating-point representation. The column pattern detection module is used to divide each column of the mantissa matrix according to a preset segment length to obtain several mantissa column segments, and to determine the category of each mantissa column segment; wherein, the category includes uniform segments and non-uniform segments; The column mode compression module is used to compress and encode all the tail column segments according to the category of each tail column segment to obtain the tail compressed representation corresponding to the sub-data block.
10. The block floating-point mantissa compression representation generation device based on column structure as described in claim 9, characterized in that, The device further includes: an approximate encoding module; The approximate encoding module is used to approximate non-uniform segments that meet preset conversion conditions into uniform segments.