RU2739705C1 - Compression data storage device and device for its implementation - Google Patents

Compression data storage device and device for its implementation Download PDF

Info

Publication number
RU2739705C1
RU2739705C1 RU2019128702A RU2019128702A RU2739705C1 RU 2739705 C1 RU2739705 C1 RU 2739705C1 RU 2019128702 A RU2019128702 A RU 2019128702A RU 2019128702 A RU2019128702 A RU 2019128702A RU 2739705 C1 RU2739705 C1 RU 2739705C1
Authority
RU
Russia
Prior art keywords
data
arithmetic
compression
converter
logical
Prior art date
Application number
RU2019128702A
Other languages
Russian (ru)
Inventor
Владимир Андреевич Бабкин
Илья Андреевич Бабкин
Андрей Владимирович Бабкин
Александр Ильич Логачев
Original Assignee
Общество с органиченной ответственностью "Инновационный проект БАРЛОБА"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество с органиченной ответственностью "Инновационный проект БАРЛОБА" filed Critical Общество с органиченной ответственностью "Инновационный проект БАРЛОБА"
Priority to RU2019128702A priority Critical patent/RU2739705C1/en
Application granted granted Critical
Publication of RU2739705C1 publication Critical patent/RU2739705C1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3059Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
    • H03M7/3062Compressive sampling or sensing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

FIELD: coding.
SUBSTANCE: invention can be used for data compression. Device comprises a switch, two registers, a control unit, two arithmetic logic units, two accumulators and a compression cycle result unit.
EFFECT: technical result is higher compression ratio.
1 cl, 11 dwg

Description

Компрессионный накопитель данных и устройство для его осуществления предназначен для компрессии цифровых массивов данных с возможностью их последующего восстановления без потерь с целью сокращения объема занимаемой ими памяти при размещении для хранения в информационной инфраструктуре дата центров, снижения трафика каналов систем обмена данными и решения других прикладных задач по сбору, передаче и хранению массивов данных.A compression data storage device and a device for its implementation are designed to compress digital data arrays with the possibility of their subsequent recovery without loss in order to reduce the amount of memory they occupy when placed for storage in the information infrastructure of data centers, reduce the traffic of data exchange channels and solve other applied problems collection, transmission and storage of data arrays.

Область техники.The field of technology.

Изобретение относится к вычислительной технике, а конкретно к технологии обработки данных - способу и устройству накопления и сжатия данных с возможностью их последующего восстановления без потерь для использования в устройствах хранения, обмена и обработки данных.The invention relates to computer technology, and specifically to data processing technology - a method and device for storing and compressing data with the possibility of their subsequent recovery without loss for use in devices for storing, exchanging and processing data.

Устройство компрессионного накопителя данных реализует способ обработки данных с воздействием на порядок расположения и содержания обрабатываемых данных в арифметико-логическом преобразователе и способно избирательно производить сложение, перекодирование и несколько логических операций, с использованием одной той же схемы.The device of a compression data storage device implements a method of data processing with an impact on the order of arrangement and content of the processed data in an arithmetic-logical converter and is capable of selectively performing addition, recoding and several logical operations using the same circuit.

Уровень техники.State of the art.

Используемые в настоящее время средства сжатия данных функционируют на основе алгоритмов устранения избыточности сжимаемых данных или использования словарных моделей. Из существующего уровня техники известен:The currently used data compression tools operate on the basis of algorithms for eliminating the redundancy of the compressed data or the use of dictionary models. It is known from the state of the art:

Способ сжатия данных (RU №2386210), в котором сжатие данных осуществляется с помощью кодера. В первом блоке памяти кодера хранятся предварительно записанные кодовые комбинации (КК1) с числом разрядов n, где n=2, 3, 4, …, представляющие собой полный набор возможных входных кодовых комбинаций (КК). Во втором блоке памяти кодера хранятся предварительно записанные кодовые комбинации КК2, однозначно соответствующие KK1, с числом разрядов, меньшим или таким же, как в КК1. Входной поток данных разделяют на КК с одинаковым числом разрядов n. КК последовательно вводят в кодер, идентифицируют путем сравнения с КК1, отображают соответствующий выходной кодовой комбинацией КК2. КК2 представляют собой последовательность групп с одинаковым числом разрядов n в каждой. Совокупное число кодовых комбинаций КК2-mn, где m=2, 3, 4, …, n=1, 2, 3, …. Число последовательных групп КК определяют как mn-1, mn-2, …. Разрядность КК2 в группе выравнивают за счет добавления незначащего нуля перед кодовой комбинацией.Data compression method (RU No. 2386210), in which data compression is performed using an encoder. The first memory block of the encoder stores pre-recorded codewords (CC 1 ) with the number of bits n, where n = 2, 3, 4, ..., representing a complete set of possible input code combinations (CC). The second memory block of the encoder stores pre-recorded code combinations KK 2 , uniquely corresponding to KK 1 , with the number of bits less than or the same as in KK 1 . The input data stream is divided into CC with the same number of bits n. KK is sequentially introduced into the encoder, identified by comparison with KK 1 , the corresponding output code combination KK 2 is displayed. KK 2 are a sequence of groups with the same number of bits n in each. The total number of code combinations KK 2 -m n , where m = 2, 3, 4,…, n = 1, 2, 3,…. The number of consecutive QC groups is defined as m n-1 , m n-2 , .... The bit width of KK2 in the group is leveled by adding a non-significant zero before the codeword.

Недостаток данного способа в том, что структура сжатых данных обязывает держать в памяти весь объем сжатых данных для определения итогового размера на выходе.The disadvantage of this method is that the structure of compressed data obliges to keep the entire amount of compressed data in memory to determine the final size at the output.

Так же, известен способ сжатия и восстановления данных без потерь (RU №2403677), в котором используется сжатие данных, ранее подвергнутых сжатию. В сжимаемом потоке данных считают количество нулей n0 и количество единиц n1, выбирают алгоритм присвоения неповторяющихся цифровых кодов всем возможным перестановкам с повторениями из по нулей и m единиц и нахождения соответствующей перестановки, которой присваивают цифровой код Nc, считают общее количество кодов nc, определяют значения d1=n0+n1-nc и d2=(n0+n1)/2, а для восстановления потока данных выполняют обратные операции.Also, there is a known method of compressing and restoring data without loss (RU # 2403677), which uses compression of data that has been previously compressed. In the compressed data stream, count the number of zeros n 0 and the number of ones n 1 , select an algorithm for assigning non-repeating digital codes to all possible permutations with repetitions of zeros and m ones and finding the corresponding permutation, which is assigned a digital code N c , count the total number of codes n c , the values d 1 = n 0 + n 1 -n c and d 2 = (n 0 + n 1 ) / 2 are determined, and the reverse operations are performed to restore the data stream.

Еще известно устройство (RU №153302), содержащее входной регистр, анализатор разрядов, блок управления ключами, блок ключей, ПЗУ, блок мультиплексоров, выходной регистр, а также тактовый генератор, делитель частоты, счетчик и выходной регистр со следующими соединениями: выход входного регистра 1-n соединен с входами анализатора разрядов и с блоком управления ключами, выходы 1-n2 анализатора соединены с информационными входами блока ключей, а выходы 1-n2 - с управляющими входами этого блока, выходы которого 1-n2 соединены с входами ПЗУ, а выходы 1-2n ПЗУ соединены с информационными входами блока мультиплексора, выходы которого 1-n являются выходами маркера устройства; выходы 3-8 входного регистра соединены с выходным регистром, выходы которого являются выходами информационных разрядов устройства; выход тактового генератора через счетчик соединен с управляющими входами блока мультиплексоров, а через делитель частоты - с управляющими входами: через выход 1 входного регистра, через выход 2 с блоком управления ключами, а через выход 3 с выходным регистром.Another known device (RU # 153302) contains an input register, a discharge analyzer, a key control unit, a key unit, a ROM, a multiplexer unit, an output register, as well as a clock generator, a frequency divider, a counter and an output register with the following connections: input register output 1-n is connected to the inputs of the discharge analyzer and to the key control unit, outputs 1-n 2 of the analyzer are connected to the information inputs of the key unit, and outputs 1-n 2 are connected to the control inputs of this unit, the outputs of which 1-n 2 are connected to the ROM inputs , and the outputs 1-2n of the ROM are connected to the information inputs of the multiplexer unit, the outputs of which 1-n are the outputs of the device marker; outputs 3-8 of the input register are connected to the output register, the outputs of which are the outputs of the information bits of the device; the output of the clock generator through the counter is connected to the control inputs of the multiplexer unit, and through the frequency divider - to the control inputs: through the output 1 of the input register, through the output 2 with the key control unit, and through the output 3 with the output register.

Наиболее близким устройством того же назначения к заявленному изобретению по совокупности признаков является способ сжатия данных без потерь (RU №2450441), который заключается в том, что в память целевого устройства записывают промежуточные сжатые данные, извлекают данные из памяти целевого устройства для последующей распаковки, при этом данные принимают и отдают 128-битными блоками, используют 16 независимых блоков памяти для хранения кэшированных кодирующих структур размером 15-байтной длины и конфигурируют размер кэш-таблицы посредством задания числа ячеек числами, равными степени 2 в пределах от 16 до 4096, при этом выполняют следующие операции: предсказывают кодирующие структуры с использованием двух связных буферов упреждающей выборки для построения словаря; кодируют от двух до пятнадцати байт входного потока в один упакованный символ за один такт; используют количество упакованных байт в качестве обратной связи для логики, отвечающей за сдвиг входного потока; выбирают кодирующую структуру за один такт путем поиска кэшированной строки с наиболее длинной совпадающей с входной строкой последовательностью символов; упаковывают данные в 32-байтные группы, выровненные по два байта; упаковывают совпадающие строки в 2-байтный кодирующий символ, состоящий из длины строки, номера блока памяти и значения хэш-функции, определяющего адрес этой строки в блоке памяти.The closest device for the same purpose to the claimed invention in terms of the totality of features is a lossless data compression method (RU No. 2450441), which consists in the fact that intermediate compressed data is written into the memory of the target device, data is retrieved from the memory of the target device for subsequent unpacking, when In this case, data is received and sent in 128-bit blocks, 16 independent memory blocks are used to store cached coding structures of 15-byte length, and the size of the cache table is configured by specifying the number of cells with numbers equal to a power of 2 in the range from 16 to 4096, while performing the following operations: predict encoding structures using two prefetch communication buffers to build a dictionary; encode from two to fifteen bytes of the input stream into one packed symbol per clock cycle; use the number of packed bytes as feedback for the logic responsible for shifting the input stream; selecting the encoding structure in one clock cycle by searching for the cached string with the longest sequence of characters matching the input string; Packing data into 32-byte groups, aligned with two bytes; pack the matching strings into a 2-byte encoding character consisting of the string length, the memory block number, and the hash value that determines the address of this string in the memory block.

Существенным общим недостатком описанных выше способов является низкий коэффициент сжатия данных.A significant common disadvantage of the methods described above is the low data compression ratio.

Сущность изобретенияThe essence of the invention

Задача, на решение которой направлено заявляемое изобретение, состоит в том, чтобы разработать способ и устройство компрессии (сжатия) данных, обладающее высокими по сравнению с известными решениями характеристиками по коэффициенту сжатия данных и отсутствием потерь для повышения информационной емкости и эффективности использования устройств хранения данных и снижение трафика систем обмена данными.The problem to be solved by the claimed invention is to develop a method and device for data compression (compression), which has high, compared to the known solutions, characteristics in terms of the data compression ratio and the absence of losses to increase the information capacity and efficiency of using data storage devices and decrease in traffic of data exchange systems.

Величина коэффициента сжатия данных определяется как отношение исходного объема данных к полученному в результате компрессии объему и в компрессионном накопителе находится в прямой зависимости от количества циклов компрессии и исходного объема массива данных. При этом коэффициент сжатия составляет 103 для массива данных длинной 1 Мбайт и растет вместе с увеличением массива входных данных при постоянном размере файла результата компрессии равном 961 бит.The value of the data compression ratio is defined as the ratio of the initial data volume to the volume obtained as a result of compression, and in a compression drive it is directly dependent on the number of compression cycles and the initial volume of the data array. The compression ratio is 10 3 for a 1 MB data array and grows with an increase in the input data array at a constant compression result file size of 961 bits.

Технический результат изобретения достигается тем, что устройство компрессии данных фиг. 1 содержит:The technical result of the invention is achieved by the fact that the data compression device of FIG. 1 contains:

Коммутатор (1) входных данных, предназначением которого является деление входного массива данных на два потока (нечетные и четные пакеты данных по 160 бит в каждом), которые поочередно записываются в регистры 1 и 2 (2 и 3) соответственно.Input data switch (1), the purpose of which is to divide the input data array into two streams (odd and even data packets of 160 bits each), which are alternately written to registers 1 and 2 (2 and 3), respectively.

Регистры 1 и 2 (2, 3) представляют собой регистры сдвига на 160 разрядов. В регистрах пакеты данных, представленные последовательным кодом, преобразуется в параллельный 160 разрядный код. Далее преобразованные в параллельный 160 разрядный код данные поступает в ячейки арифметико-логического преобразователя 1 или 2 (5 и 6) в зависимости от номера пакета данных (нечетный, четный).Registers 1 and 2 (2, 3) are 160-bit shift registers. In registers, data packets represented by serial code are converted to parallel 160-bit code. Further, the data converted into a parallel 160-bit code enters the cells of the arithmetic-logical converter 1 or 2 (5 and 6), depending on the number of the data packet (odd, even).

Блок управления (4) компрессионным накопителем данных представляет собой устройство управляющее управление основными операциями компрессора данных и реализующее соответствующий алгоритм работы компрессионного накопителя данных.The control unit (4) for the compression data accumulator is a device that controls the main operations of the data compressor and implements the corresponding algorithm for the operation of the compression data accumulator.

Арифметико-логический преобразователь (5, 6) представляет собой устройство, содержащее квадратную матрицу из 31х31 логических ячеек выходы которых объединяются 181 сумматором-шифратором строк, столбцов и диагоналей. Каждая ячейка содержит логическую схему фиг. 2 и имеет два входа и четыре выхода. Каждый из четырех выходов 961 ячейки соединен с соответствующими входом 181 сумматора-шифратора строк фиг. 3, столбцов фиг. 4, диагонали ЛП фиг. 5 и диагонали ПЛ фиг. 6 арифметико-логического преобразователя.Arithmetic-logical converter (5, 6) is a device containing a square matrix of 31x31 logical cells, the outputs of which are combined by 181 adder-encoder of rows, columns and diagonals. Each cell contains the logic circuit of FIG. 2 and has two entrances and four exits. Each of the four cell outputs 961 is connected to a corresponding input 181 of the row adder / encoder of FIG. 3, the columns of FIG. 4, the LP diagonals of FIG. 5 and the PL diagonal of FIG. 6 arithmetic-logic converter.

На вход ячеек арифметико-логического преобразователя данные поступают от регистра 1 или 2 и накопителя 2 или 1 в виде «0» и «1». Данные хранятся в триггерах, входящих в состав каждой ячейки фиг. 2. При этом данные записываются в строго определенные алгоритмом компрессии ячейки.At the input of the cells of the arithmetic-logical converter, data comes from register 1 or 2 and storage device 2 or 1 in the form of "0" and "1". Data is stored in triggers included in each cell of FIG. 2. In this case, the data is written into the cells strictly defined by the compression algorithm.

В логических схемах непосредственно сумматоров-шифраторов строк фиг. 7, столбцов, фиг. 8, диагонали ЛП фиг. 9 и диагонали ПЛ фиг. 10 производится подсчет количества ячеек арифметико-логического преобразователя, находящихся в состоянии «1». Подсчет «1» производится отдельно по каждой строке, столбцу и диагоналям ЛП и ПЛ. Полученная на выходе каждого сумматора-шифратора сумма «1» в виде двоичной пятиразрядной комбинации записывается в накопитель 1 (7) в соответствующие алгоритму компрессии ячейки.In the logic circuits of the line adders / encoders of FIG. 7, columns, fig. 8, the LP diagonals of FIG. 9 and the PL diagonal of FIG. 10 counts the number of cells of the arithmetic-logical converter, which are in the state "1". Counting "1" is performed separately for each row, column and diagonals of LP and PL. The sum “1” received at the output of each adder-encoder in the form of a binary five-bit combination is written into the drive 1 (7) in the cells corresponding to the compression algorithm.

Накопитель 1 и 2 (7 и 8) представляют собой элементы памяти, состоящие из 801 триггера с раздельными входами и выходами и предназначены для промежуточного хранения преобразованных в арифметико-логическом преобразователе данных.Drive 1 and 2 (7 and 8) are memory elements consisting of 801 flip-flops with separate inputs and outputs and are intended for intermediate storage of data converted in an arithmetic-logical converter.

Из накопителя 1 преобразованные данные переносятся в арифметико-логический преобразователь 2 (6) в ячейки с 001 по 801. Параллельно эти данные записываются в блок результата циклов компрессии (9) для формирования, в случае завершения работы компрессора накопителя данных, итогового файла результатов компрессии.From the drive 1, the converted data is transferred to the arithmetic-logical converter 2 (6) in cells 001 to 801. In parallel, this data is written to the block of the result of compression cycles (9) to form, in the event of compressor shutdown of the data storage, the final file of the compression results.

Одновременно с перезаписью итога цикла компрессии в арифметико-логический преобразователь 2 (6) в ячейки с 802 по 961 поступает новый пакет данных из регистра 2 (3). Записанные в ячейки арифметико-логического преобразователя 2 (6) данные в сумматорах-шифраторах строк, столбцов и диагоналей преобразуются в двоичные пятиразрядные комбинации, которые записываются в накопитель 2 (3) и параллельно в блок результата циклов компрессии (9) поверх результатов предыдущего цикла компрессии.Simultaneously with the rewriting of the result of the compression cycle into the arithmetic-logical converter 2 (6), a new data packet from register 2 (3) arrives in cells 802 to 961. The data written in the cells of the arithmetic-logical converter 2 (6) in the adders-encoders of rows, columns and diagonals are converted into binary five-bit combinations, which are written to the drive 2 (3) and in parallel to the block of the result of compression cycles (9) over the results of the previous compression cycle ...

Далее процесс преобразования циклически повторяется с каждым новым пакетом данных.Further, the conversion process is cyclically repeated with each new data packet.

Один цикл компрессии производится за 32 такта. При этом запись пакета данных в регистр 1 или 2 занимает 160 тактов и таким образом за время записи очередного пакета данных в регистр 1 или 2 может быть произведено до 4 циклов компрессии.One compression cycle takes 32 clocks. In this case, writing a data packet to register 1 or 2 takes 160 cycles, and thus, during the time of writing the next data packet to register 1 or 2, up to 4 compression cycles can be performed.

Алгоритм работы компрессора данных представлен на фиг. 11 и содержит в себе последовательность следующих действий:The data compressor operation algorithm is shown in Fig. 11 and contains the sequence of the following actions:

1. Устанавливается исходное состояние компрессора накопителя данных - все элементы памяти, регистры, накопители, ячейки арифметико-логического преобразователя приводятся в состояние «0», счетчик времени устанавливается на «0».1. The initial state of the compressor of the data accumulator is set - all memory elements, registers, accumulators, cells of the arithmetic-logical converter are brought to the state "0", the time counter is set to "0".

2. Производится ввод массива данных.2. The data array is being entered.

3. Входной массив данных делится на пакеты данных длиной по 160 бит каждый. Одновременно производится подсчет количества пакетов.3. The input data array is divided into data packets with a length of 160 bits each. The number of packets is counted at the same time.

4. Запускается счетчик времени работы компрессора данных.4. The data compressor run time counter starts.

5. Производится запись в входной сдвиговый регистр 1 первого нечетного пакета данных длиной 160 бит и преобразование его в параллельную кодовую последовательность.5. Writing to the input shift register 1 of the first odd data packet with a length of 160 bits and converting it into a parallel code sequence.

6. Параллельная кодовая последовательность записывается в ячейки с 802 по 961 арифметико-логического преобразователя 1.6. The parallel code sequence is written in cells 802 to 961 of the arithmetic-logical converter 1.

7. Преобразование в сумматорах-шифраторах арифметико-логического преобразователя 1 сумм «1» по строкам, столбцам, диагонали ЛП и диагонали ПЛ в двоичный пятиразрядный код и запись его в накопитель 1.7. Conversion in adders-encoders of the arithmetic-logical converter 1 of the sums "1" in rows, columns, the LP diagonal and the PL diagonal into a binary five-digit code and writing it to the drive 1.

8. Перезапись преобразованных данных из накопителя 1 в арифметико-логический преобразователь 2 в ячейки с 001 по 801 и блок результата цикла компрессии.8. Rewriting the converted data from storage 1 into arithmetic-logical converter 2 into cells 001 to 801 and the block of the result of the compression cycle.

9. Одновременно производится запись в входной сдвиговый регистр 2 четного пакета данных длиной 160 бит и преобразование его в параллельную кодовую последовательность и запись ее в ячейки с 802 по 961 арифметико-логического преобразователя 2.9. At the same time, an even data packet with a length of 160 bits is written into the input shift register 2 and converted into a parallel code sequence and written into cells 802 to 961 of the arithmetic-logical converter 2.

10. Параллельное преобразование в сумматорах-шифраторах арифметико-логического преобразователя 2 сумм «1» по строкам, столбцам, диагонали ЛП и диагонали ПЛ в двоичный пятиразрядный код и запись его в накопитель 2.10. Parallel transformation in the adders-encoders of the arithmetic-logical converter 2 of the sums "1" in rows, columns, the LP diagonal and the PL diagonal into a binary five-digit code and writing it to the drive 2.

11. Перезапись преобразованных данных из накопителя 2 в арифметико-логический преобразователь 1 в ячейки с 001 по 801 и блок результата цикла компрессии поверх записанных ранее данных.11. Overwriting the converted data from the drive 2 into the arithmetic-logical converter 1 into cells 001 to 801 and the block of the result of the compression cycle over the previously recorded data.

12. Далее действия описанные в пунктах с 5 по 11 повторяются до момента завершения массива данных (или ручной подачи команды «стоп»).12. Further, the actions described in paragraphs 5 to 11 are repeated until the end of the data array (or manual submission of the command "stop").

13. По завершению работы компрессора данных к результатам последнего цикла компрессии добавляются сведения по количеству обработанных пакетов данных и продолжительности общего времени работы компрессионного накопителя данных. Из этих данных в блоке результата циклов компрессии формируется итоговый результат работы в виде файла длиной 961 бит.13. Upon completion of the data compressor operation, information on the number of processed data packets and the duration of the total operation time of the compression data accumulator is added to the results of the last compression cycle. From this data in the block of the result of compression cycles, the final result of the work is formed in the form of a file with a length of 961 bits.

В результате работы компрессора накопителя производится сжатие данных с коэффициентом сжатия, адаптированным под размер массива входных данных. При этом размер файла конечного результата компрессии является величиной постоянной и от размера входного массива данных не изменяется.As a result of the drive compressor operation, data is compressed with a compression ratio adapted to the size of the input data array. In this case, the file size of the final compression result is constant and does not change from the size of the input data array.

Компрессор накопитель данных найдет широкое применение в центрах обработки и хранения данных. При этом существенно будут снижены энергозатраты на содержание дата-центров.The data storage compressor will find wide application in data processing and storage centers. At the same time, energy costs for maintaining data centers will be significantly reduced.

Так же, при обмене массивами данных, предварительно обработанных на компрессионном накопителе, существенно снизится трафик используемых каналов связи.Also, when exchanging data arrays, pre-processed on a compression drive, the traffic of the used communication channels will significantly decrease.

Декомпрессия данных, сжатых в компрессоре накопителе, рассматривается в отдельной заявке на изобретение: «Декомпрессор данных и устройство для его осуществления».Decompression of data compressed in a storage compressor is considered in a separate application for the invention: "Data decompressor and device for its implementation."

Фиг. 1.FIG. one. Структурная схема компрессионного накопителя данных.Block diagram of a compression data storage. Фиг. 2.FIG. 2. Логическая схема ячейки N арифметико-логического преобразователя.Logic circuit of cell N of the arithmetic-logical converter. Фиг. 3. FIG. 3. Схема (фрагмент) преобразователя суммы «1» по строкам.Scheme (fragment) of the converter of the sum "1" by lines. Фиг. 4.FIG. 4. Схема (фрагмент) преобразователя суммы «1» по столбцам.Diagram (fragment) of the converter of the sum "1" by columns. Фиг. 5.FIG. 5. Схема (фрагмент для диагонали 30) преобразователя суммы «1» по диагоналям ЛП.Scheme (fragment for diagonal 30) of the converter of the sum “1” along the LP diagonals. Фиг. 6.FIG. 6. Схема (фрагмент для диагонали 30) преобразователя суммы «1» по диагоналям ПЛ.Diagram (fragment for diagonal 30) of the converter of the sum "1" on the PL diagonals. Фиг. 7.FIG. 7. Логическая схема сумматора-шифратора строк (фрагмент схемы для одной строки) арифметико-логического преобразователя.Logical circuit of the adder-encoder of lines (a fragment of the circuit for one line) of the arithmetic-logical converter. Фиг. 8.FIG. 8. Логическая схема сумматора-шифратора столбцов (фрагмент схемы для одного столбца) арифметико-логического преобразователя.The logical scheme of the column adder-encoder (a fragment of the scheme for one column) of the arithmetic-logical converter. Фиг. 9.FIG. nine. Логическая схема сумматора-шифратора диагонали ЛП (фрагмент схемы для диагонали ЛП 31) арифметико-логического преобразователя.Logic diagram of the adder-encoder of the LP diagonal (a fragment of the circuit for the LP 31 diagonal) of the arithmetic-logical converter. Фиг. 10.FIG. ten. Логическая схема сумматора-шифратора диагонали ПЛ (фрагмент схемы для диагонали ПЛ 31) арифметико-логического преобразователя.Logic diagram of the adder-encoder of the PL diagonal (a fragment of the circuit for the PL diagonal 31) of the arithmetic-logical converter. Фиг. 11.FIG. eleven. Алгоритм работы компрессионного накопителя данных.Algorithm of the compression data storage.

Claims (1)

Компрессионный накопитель данных, содержащий блок управления, коммутатор, два регистра, два арифметико-логических преобразователя, два накопителя и блок результата цикла компрессии, при этом выходы коммутатора соединены с входами регистров, выход первого регистра соединен с входом первого арифметико-логического преобразователя, выход второго регистра соединен с входом второго арифметико-логического преобразователя, выход первого арифметико-логического преобразователя через первый накопитель соединен с входом второго арифметико-логического преобразователя, выход второго арифметико-логического преобразователя через второй накопитель соединен с входом первого арифметико-логического преобразователя, выходы первого и второго арифметико-логического преобразователя соединены с входами блока результата цикла компрессии, выходы блока управления соединены с входами коммутатора, двух регистров, двух арифметико-логических преобразователей, двух накопителей и блока результата цикла компрессии.Compression data storage containing a control unit, a commutator, two registers, two arithmetic-logic converters, two accumulators and a block of the compression cycle result, while the outputs of the commutator are connected to the inputs of the registers, the output of the first register is connected to the input of the first arithmetic-logic converter, the output of the second the register is connected to the input of the second arithmetic-logical converter, the output of the first arithmetic-logical converter through the first drive is connected to the input of the second arithmetic-logical converter, the output of the second arithmetic-logical converter through the second drive is connected to the input of the first arithmetic-logical converter, the outputs of the first and second arithmetic-logical converter are connected to the inputs of the block of the result of the compression cycle, the outputs of the control block are connected to the inputs of the switch, two registers, two arithmetic-logical converters, two accumulators and the block of the result of the compression cycle.
RU2019128702A 2019-09-12 2019-09-12 Compression data storage device and device for its implementation RU2739705C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2019128702A RU2739705C1 (en) 2019-09-12 2019-09-12 Compression data storage device and device for its implementation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019128702A RU2739705C1 (en) 2019-09-12 2019-09-12 Compression data storage device and device for its implementation

Publications (1)

Publication Number Publication Date
RU2739705C1 true RU2739705C1 (en) 2020-12-28

Family

ID=74106393

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019128702A RU2739705C1 (en) 2019-09-12 2019-09-12 Compression data storage device and device for its implementation

Country Status (1)

Country Link
RU (1) RU2739705C1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04195422A (en) * 1990-11-28 1992-07-15 Nec Corp Adaptive data compression system
US7180433B1 (en) * 2005-09-22 2007-02-20 Tandberg Storage Asa Fast data compression and decompression system and method
RU2386210C2 (en) * 2006-08-04 2010-04-10 Государственное образовательное учреждение высшего профессионального образования "Поволжская государственная академия телекоммуникаций и информатики" Method for data compression
RU2403677C1 (en) * 2009-02-09 2010-11-10 Сергей Борисович Муллов Method for lossless data compression and retrieval
RU2450441C1 (en) * 2011-03-14 2012-05-10 Общество с ограниченной ответственностью "Астрософт Интернешн" Data compression method and apparatus

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04195422A (en) * 1990-11-28 1992-07-15 Nec Corp Adaptive data compression system
US7180433B1 (en) * 2005-09-22 2007-02-20 Tandberg Storage Asa Fast data compression and decompression system and method
RU2386210C2 (en) * 2006-08-04 2010-04-10 Государственное образовательное учреждение высшего профессионального образования "Поволжская государственная академия телекоммуникаций и информатики" Method for data compression
RU2403677C1 (en) * 2009-02-09 2010-11-10 Сергей Борисович Муллов Method for lossless data compression and retrieval
RU2450441C1 (en) * 2011-03-14 2012-05-10 Общество с ограниченной ответственностью "Астрософт Интернешн" Data compression method and apparatus

Similar Documents

Publication Publication Date Title
RU2403677C1 (en) Method for lossless data compression and retrieval
JPH0799812B2 (en) Signal coding apparatus, signal decoding apparatus, and signal coding / decoding apparatus
CA2485566C (en) Method and arrangement for data compression according to the lz7 algorithm
US8013762B2 (en) Evaluating alternative encoding solutions during data compression
JPS6148298B2 (en)
JPH0568893B2 (en)
JPS5916300B2 (en) Converter from variable length code word to fixed length character
JPH03204233A (en) Data compression method
CN103095305A (en) System and method for hardware LZ77 compression implementation
CN116016606B (en) Sewage treatment operation and maintenance data efficient management system based on intelligent cloud
CN115276666B (en) Efficient data transmission method for equipment training simulator
JP3241788B2 (en) Data compression method
RU2739705C1 (en) Compression data storage device and device for its implementation
Arming et al. Data compression in hardware—the burrows-wheeler approach
KR101023536B1 (en) Lossless data compression method
US5488366A (en) Segmented variable length decoding apparatus for sequentially decoding single code-word within a fixed number of decoding cycles
JPH03204234A (en) Restoration of compressed data
JP4758494B2 (en) Circuit and method for converting bit length to code
JPH03204235A (en) Decoding of compressed data
RU2382492C1 (en) Method of compressing and retrieving data without loss
CN111900999B (en) High-performance polarization coding method and coder for satellite discontinuous communication
RU2450441C1 (en) Data compression method and apparatus
CN113346913A (en) Data compression using reduced number of occurrences
JPH0628149A (en) Method for compressing plural kinds of data
JP2590287B2 (en) Data compression method and data compression apparatus