RU2441328C2 - Methods and apparatus for generating multiple cyclic redundancy code (crc) values - Google Patents
Methods and apparatus for generating multiple cyclic redundancy code (crc) values Download PDFInfo
- Publication number
- RU2441328C2 RU2441328C2 RU2010110135/08A RU2010110135A RU2441328C2 RU 2441328 C2 RU2441328 C2 RU 2441328C2 RU 2010110135/08 A RU2010110135/08 A RU 2010110135/08A RU 2010110135 A RU2010110135 A RU 2010110135A RU 2441328 C2 RU2441328 C2 RU 2441328C2
- Authority
- RU
- Russia
- Prior art keywords
- code
- cyclic redundancy
- block
- redundancy check
- transport block
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6522—Intended application, e.g. transmission or communication standard
- H03M13/6525—3GPP LTE including E-UTRA
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
- H04L1/005—Iterative decoding, including iteration between signal detection and decoding operation
- H04L1/0051—Stopping criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Computational Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
Abstract
Description
Область техники, к которой относится изобретениеFIELD OF THE INVENTION
Настоящее изобретение относится к способам и устройству для создания множества контрольных значений циклического избыточного кода (CRC). The present invention relates to methods and apparatus for generating a plurality of cyclic redundancy check (CRC) control values.
Уровень техникиState of the art
Система беспроводной связи в общем случае включает в себя множество базовых станций и множество мобильных станций, причем часто одна базовая станция осуществляет связь с набором мобильных станций. Передача от базовой станции на мобильную станцию известна как связь по нисходящей линии. Аналогичным образом, передача от мобильной станции на базовую станцию известна как связь по восходящей линии. Как базовые станции, так и мобильные станции могут использовать множество антенн для передачи и приема радиосигналов. Радиосигнал может представлять собой либо сигналы мультиплексирования с ортогональным частотным разделением каналов (OFDM), либо сигналы множественного доступа с кодовым разделением каналов (CDMA). Мобильной станицей может быть персональный цифровой помощник (PDA), компьютер типа «лэптоп» или карманное устройство.A wireless communication system generally includes a plurality of base stations and a plurality of mobile stations, often a single base station communicating with a set of mobile stations. Transmission from a base station to a mobile station is known as downlink communication. Similarly, transmission from a mobile station to a base station is known as uplink communication. Both base stations and mobile stations can use multiple antennas to transmit and receive radio signals. The radio signal may be either orthogonal frequency division multiplexing (OFDM) signals or code division multiple access (CDMA) signals. The mobile station may be a personal digital assistant (PDA), a laptop computer or a handheld device.
В Системе долгосрочного развития согласно Проекту партнерства третьего поколения (3GPP LTE), когда встречается транспортный блок большого размера, его сегментируют на множество кодовых блоков, так чтобы можно было создать множество кодированных пакетов, что дает такие преимущества, как возможность реализации параллельной обработки или конвейерной обработки и нахождения гибкого компромисса между энергопотреблением и аппаратной сложностью. In the Long-Term Development System according to the Third Generation Partnership Project (3GPP LTE), when a large transport block is encountered, it is segmented into a plurality of code blocks so that a plurality of coded packets can be created, which provides advantages such as the possibility of implementing parallel processing or pipelining and finding a flexible compromise between power consumption and hardware complexity.
В современном техническом решении для высокоскоростного совместно используемого канала данных (HS-DSCH) создается только одно 24-битовое контрольное значение циклического избыточного кода (CRC) для всего транспортного блока с целью обнаружения ошибок в этом блоке. При создании и передаче множества кодовых блоков в одном временном интервале передачи (TTI) приемник может правильно декодировать некоторые кодовые блоки и неправильно декодировать другие. В этом случае приемник посылает обратно в передатчик сообщение «не подтверждаю (NAK)», поскольку CRC для данного транспортного блока не прошло проверку. The current technical solution for the high-speed shared data channel (HS-DSCH) creates only one 24-bit cyclic redundancy check (CRC) value for the entire transport block in order to detect errors in this block. When creating and transmitting multiple code blocks in one transmission time interval (TTI), the receiver may correctly decode some code blocks and incorrectly decode others. In this case, the receiver sends back to the transmitter the message "I do not confirm (NAK)", because the CRC for this transport block has not passed the verification.
Сущность изобретенияSUMMARY OF THE INVENTION
Таким образом, задачей настоящего изобретения является обеспечение усовершенствованных способов и устройства для создания контрольных значений циклического избыточного кода для множества кодовых блоков.Thus, it is an object of the present invention to provide improved methods and apparatus for generating cyclic redundancy check values for a plurality of code blocks.
Другой задачей настоящего изобретения является обеспечение усовершенствованного способа и устройства для обнаружения ошибок. Another objective of the present invention is the provision of an improved method and device for detecting errors.
Согласно одному аспекту настоящего изобретения вычисляется множество контрольных значений циклического избыточного кода на основе множества бит. По меньшей мере одно контрольное значение циклического избыточного кода вычисляют на основе поднабора из множества бит. Затем множество контрольных значений циклического избыточного кода и множество бит передают по меньшей мере через одну передающую антенну.According to one aspect of the present invention, a plurality of cyclic redundancy check values based on a plurality of bits are calculated. At least one cyclic redundancy check value is calculated based on a subset of the plurality of bits. Then, a plurality of cyclic redundancy check values and a plurality of bits are transmitted through at least one transmit antenna.
Согласно еще одному аспекту настоящего изобретения контрольное значение циклического избыточного кода для транспортного блока вычисляют на основе транспортного блока информационных бит путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода. Транспортный блок сегментируют по меньшей мере на один кодовый блок. Затем вычисляют контрольное значение циклического избыточного кода для по меньшей мере одного кодового блока на основе по меньшей мере одного кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем контрольное значение циклического избыточного кода для одного кодового блока вычисляют на основе соответствующего одного кодового блока. Наконец, по меньшей мере один кодовый блок и контрольное значение циклического избыточного кода для по меньшей мере одного кодового блока передают по меньшей мере через одну передающую антенну. В этом способе информационные биты в транспортном блоке перемежают после вычисления контрольного значения циклического избыточного кода для транспортного блока, но перед вычислением контрольного значения циклического избыточного кода для по меньшей мере одного кодового блока.According to another aspect of the present invention, a cyclic redundancy check value for a transport block is calculated based on a transport block of information bits by using a selected generating polynomial for a cyclic redundancy check value. The transport block is segmented into at least one code block. The cyclic redundancy check value for the at least one code block is then calculated based on the at least one code block by using the selected generating polynomial for the cyclic redundancy check value, the cyclic redundancy check value for one code block is calculated based on the corresponding one code block block. Finally, at least one code block and a cyclic redundancy check value for at least one code block are transmitted through at least one transmit antenna. In this method, information bits in a transport block are interleaved after calculating a cyclic redundancy check value for a transport block, but before calculating a cyclic redundancy check value for at least one code block.
Информационные биты в транспортном блоке могут перемежаться с битами в контрольном значении циклического избыточного кода для транспортного блока.Information bits in a transport block may be interleaved with bits in a cyclic redundancy check value for a transport block.
В альтернативном варианте информационные биты в транспортном блоке могут перемежаться без использования бит в контрольном значении циклического избыточного кода для транспортного блока.Alternatively, information bits in a transport block may be interleaved without using bits in a cyclic redundancy check value for a transport block.
Информационные биты в транспортном блоке могут перемежаться до сегментации транспортного блока на по меньшей мере один кодовый блок.Information bits in a transport block may be interleaved until the transport block is segmented into at least one code block.
В альтернативном варианте информационные биты в транспортном блоке могут перемежаться после сегментации транспортного блока на по меньшей мере один кодовый блок.Alternatively, information bits in a transport block may be interleaved after segmenting the transport block into at least one code block.
Информационные биты в транспортном блоке могут перемежаться путем применения шаблонов перемежения, которые имеют меньшую продолжительность, чем длина кодового блока. Information bits in a transport block may be interleaved by applying interleaving patterns that are shorter than the length of the code block.
Информационные биты в транспортном блоке могут перемежаться путем замены по меньшей мере одного информационного бита на другой информационный бит в транспортном блоке. Information bits in a transport block may be interleaved by replacing at least one information bit with another information bit in a transport block.
Согласно следующему аспекту настоящего изобретения контрольное значение циклического избыточного кода для транспортного блока вычисляют на основе последовательности информационных бит в транспортном блоке путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода. Затем транспортный блок сегментируют по меньшей мере на один кодовый блок. Вычисляют контрольное значение циклического избыточного кода для по меньшей мере одного кодового блока на основе по меньшей мере одного кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем контрольное значение циклического избыточного кода для одного кодового блока вычисляют на основе соответствующего одного кодового блока. Наконец, по меньшей мере один кодовый блок и по меньшей мере одно контрольное значение циклического избыточного кода для кодового блока передают по меньшей мере через одну передающую антенну. В этом способе перед вычислением соответствующего контрольного значения циклического избыточного кода выполняется обратное упорядочивание либо битовой последовательности в транспортном блоке, либо битовой последовательности по меньшей мере в одном кодовом блоке.According to a further aspect of the present invention, a cyclic redundancy check value for a transport block is calculated based on a sequence of information bits in a transport block by using a selected generating polynomial for a cyclic redundancy check value. The transport block is then segmented into at least one code block. The cyclic redundancy check value for at least one code block is calculated based on the at least one code block by using the selected generating polynomial for the cyclic redundancy check value, the cyclic redundancy check value for one code block being calculated based on the corresponding one code block . Finally, at least one code block and at least one cyclic redundancy check value for the code block is transmitted through at least one transmit antenna. In this method, before computing the corresponding cyclic redundancy check value, either the bit sequence in the transport block or the bit sequence in at least one code block is reverse-ordered.
В частности, контрольное значение циклического избыточного кода для транспортного блока можно вычислить на основе естественного порядка битовой последовательности в транспортном блоке, а контрольное значение циклического избыточного кода для кодового блока можно вычислить на основе обратного порядка битовой последовательности в кодовом блоке. In particular, the cyclic redundancy check value for the transport block can be calculated based on the natural bit order of the transport block, and the cyclic redundancy check value for the code block can be calculated based on the reverse order of the bit sequence in the code block.
В альтернативном варианте контрольное значение циклического избыточного кода для транспортного блока можно вычислить на основе обратного порядка битовой последовательности в транспортном блоке, а контрольное значение циклического избыточного кода для кодового блока можно вычислить на основе естественного порядка битовой последовательности в кодовом блоке.Alternatively, the cyclic redundancy check value for the transport block can be calculated based on the reverse bit sequence in the transport block, and the cyclic redundancy check value for the code block can be calculated based on the natural order of the bit sequence in the code block.
Согласно еще одному аспекту настоящего изобретения контрольное значение циклического избыточного кода для транспортного блока вычисляют на основе транспортного блока информационных бит путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода. Транспортный блок сегментируют на множество кодовых блоков. Биты в контрольном значении циклического избыточного кода для транспортного блока распределяют в каждый из кодовых блоков. Затем вычисляют множество контрольных значений циклического избыточного кода для кодовых блоков на основе множества кодовых блоков путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем контрольное значение циклического избыточного кода для каждого кодового блока вычисляют на основе соответствующего кодового блока. Наконец, множество кодовых блоков и множество контрольных значений циклического избыточного кода для кодовых блоков передают по меньшей мере через одну передающую антенну.According to another aspect of the present invention, a cyclic redundancy check value for a transport block is calculated based on a transport block of information bits by using a selected generating polynomial for a cyclic redundancy check value. A transport block is segmented into a plurality of code blocks. The bits in the cyclic redundancy check value for the transport block are allocated to each of the code blocks. Then, a plurality of cyclic redundancy check values for code blocks are calculated based on the plurality of code blocks by using the selected generating polynomial for a cyclic redundancy check value, wherein a cyclic redundancy check value for each code block is calculated based on the corresponding code block. Finally, a plurality of code blocks and a plurality of cyclic redundancy check values for code blocks are transmitted through at least one transmit antenna.
Согласно следующему аспекту настоящего изобретения по меньшей мере один кодовый блок из битовой последовательности и по меньшей мере одно контрольное значение циклического избыточного кода для кодового блока принимают по меньшей мере через одну антенну. Упомянутый по меньшей мере один кодовый блок декодируют. Проверяют контрольное значение циклического избыточного кода для по меньшей мере одного кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода с целью определения того, правильно ли декодирован упомянутый по меньшей мере один кодовый блок. Если этот по меньшей мере один кодовый блок декодирован правильно, выполняют его последовательное соединение для создания транспортного блока. Проверяют контрольное значение циклического избыточного кода для этого транспортного блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода с целью определения того, правильно ли декодирован транспортный блок. В этом способе битовую последовательность либо по меньшей мере в одном кодовом блоке, либо в транспортном блоке переупорядочивают после выполнения проверки контрольного значения циклического избыточного кода для по меньшей мере одного кодового блока, но перед выполнением проверки контрольного значения циклического избыточного кода для транспортного блока.According to a further aspect of the present invention, at least one code block from a bit sequence and at least one cyclic redundancy check value for a code block is received via at least one antenna. The at least one code block is decoded. The cyclic redundancy check value for the at least one code block is checked by using the selected generating polynomial for the cyclic redundancy check value to determine if said at least one code block is decoded correctly. If this at least one code block is decoded correctly, it is connected in series to create a transport block. Check the cyclic redundancy check value for this transport block by using the selected generating polynomial for the cyclic redundancy check value to determine if the transport block is decoded correctly. In this method, a bit sequence in either at least one code block or a transport block is reordered after checking the cyclic redundancy check value for at least one code block, but before checking the cyclic redundancy check value for the transport block.
Согласно другому аспекту настоящего изобретения вычисляют множество контрольных значений циклического избыточного кода на основе множества бит путем использования множества порождающих многочленов для контрольного значения циклического избыточного кода. В этом способе первый порождающий многочлен для контрольного значения циклического избыточного кода используют для вычисления первого контрольного значения циклического избыточного кода на основе первого множества бит, а второй порождающий многочлен для контрольного значения циклического избыточного кода используют для вычисления второго контрольного значения циклического избыточного кода на основе второго множества бит.According to another aspect of the present invention, a plurality of cyclic redundancy check values are calculated based on a plurality of bits by using a plurality of generating polynomials for a cyclic redundancy check value. In this method, a first generating polynomial for a cyclic redundancy check value is used to calculate a first cyclic redundancy check value based on a first set of bits, and a second generating polynomial for a cyclic redundancy check value is used to calculate a second cyclic redundancy check code value based on a second set bit.
Первым множеством бит может быть поднабор из второго множества бит.The first plurality of bits may be a subset of the second plurality of bits.
В альтернативном варианте первым множеством бит может быть расширенный набор из второго множества бит. Alternatively, the first plurality of bits may be an expanded set of the second plurality of bits.
Еще в одном альтернативном варианте первое множество бит может перекрывать второе множество бит.In yet another alternative embodiment, the first plurality of bits may overlap the second plurality of bits.
Первое контрольное значение циклического избыточного кода и второе контрольное значение циклического избыточного кода могут иметь разную длину.The first cyclic redundancy check value and the second cyclic redundancy check value may have different lengths.
В альтернативном варианте первое контрольное значение циклического избыточного кода и второе контрольное значение циклического избыточного кода могут иметь одинаковую длину.Alternatively, the first cyclic redundancy check value and the second cyclic redundancy check value may have the same length.
Согласно следующему аспекту настоящего изобретения контрольное значение циклического избыточного кода для транспортного блока вычисляют на основе транспортного блока информационных бит путем использования первого порождающего многочлена для контрольного значения циклического избыточного кода. Транспортный блок сегментируют на по меньшей мере один кодовый блок. Затем вычисляют контрольное значение циклического избыточного кода для по меньшей мере одного кодового блока на основе по меньшей мере одного кодового блока путем использования второго порождающего многочлена для контрольного значения циклического избыточного кода, причем контрольное значение циклического избыточного кода для одного кодового блока вычисляют на основе соответствующего одного кодового блока. Наконец, по меньшей мере один кодовый блок и контрольное значение циклического избыточного кода для по меньшей мере одного кодового блока передают по меньшей мере через одну антенну. According to a further aspect of the present invention, a cyclic redundancy check value for a transport block is calculated based on a transport block of information bits by using a first generating polynomial for a cyclic redundancy check value. The transport block is segmented into at least one code block. The cyclic redundancy check value for at least one code block is then calculated based on the at least one code block by using a second generating polynomial for the cyclic redundancy check value, the cyclic redundancy check value for one code block being calculated based on the corresponding one code block block. Finally, at least one code block and a cyclic redundancy check value for at least one code block are transmitted through at least one antenna.
Согласно еще одному аспекту настоящего изобретения по меньшей мере один кодовый блок битовой последовательности и контрольное значение циклического избыточного кода для по меньшей мере одного кодового блока принимают по меньшей мере через одну антенну. Упомянутый по меньшей мере один кодовый блок декодируют. Затем проверяют контрольное значение циклического избыточного кода для этого по меньшей мере одного кодового блока путем использования второго порождающего многочлена для контрольного значения циклического избыточного кода с целью определения того, правильно ли декодирован упомянутый по меньшей мере один кодовый блок. Если упомянутый по меньшей мере один кодовый блок декодирован правильно, то выполняют его последовательное соединение для создания транспортного блока. Наконец, проверяют контрольное значение циклического избыточного кода для транспортного блока путем использования первого порождающего многочлена для контрольного значения циклического избыточного кода, чтобы определить, правильно ли декодирован транспортный блок.According to yet another aspect of the present invention, at least one code block of a bit sequence and a cyclic redundancy check value for at least one code block are received via at least one antenna. The at least one code block is decoded. The cyclic redundancy check value for this at least one code block is then checked by using a second generating polynomial for the cyclic redundancy check value to determine if said at least one code block is decoded correctly. If said at least one code block is decoded correctly, then it is connected in series to create a transport block. Finally, the cyclic redundancy check value for the transport block is checked by using the first generating polynomial for the cyclic redundancy check value to determine if the transport block is correctly decoded.
Краткое описание чертежейBrief Description of the Drawings
Более полную оценку изобретения и множества присущих ему преимуществ можно будет получить и уяснить при обращении к последующему подробному описанию вместе с сопроводительными чертежами, на которых одинаковые ссылочные символы указывают на одинаковые или подобные компоненты, где:A more complete assessment of the invention and the many inherent advantages can be obtained and clarified by referring to the following detailed description together with the accompanying drawings, in which the same reference characters indicate the same or similar components, where:
Фиг.1 - схематическая иллюстрация функционирования системы гибридного автоматического запроса на повторную передачу (HARQ);Figure 1 is a schematic illustration of the operation of a hybrid automatic retransmission request (HARQ) system;
Фиг.2 - схематическая иллюстрация примера использования контрольного значения циклического избыточного кода (CRC) для транспортного блока и сегментации на кодовые блоки;FIG. 2 is a schematic illustration of an example of using a cyclic redundancy check (CRC) check value for a transport block and segmentation into code blocks; FIG.
Фиг.3А - схематическая иллюстрация функционирования передатчика для вычисления CRC транспортного блока и CRC кодового блока как одного варианта осуществления изобретения, соответствующего принципам настоящего изобретения;3A is a schematic illustration of the operation of a transmitter for calculating a CRC of a transport block and a CRC of a code block as one embodiment of the invention in accordance with the principles of the present invention;
Фиг.3C - схематическая иллюстрация функционирования передатчика для вычисления CRC транспортного блока и CRC кодового блока как другого варианта осуществления изобретения, соответствующего принципам настоящего изобретения; Fig. 3C is a schematic illustration of the operation of a transmitter for computing a transport block CRC and a code block CRC as another embodiment of the invention in accordance with the principles of the present invention;
Фиг.4 - схематическая иллюстрация примера CRC транспортного блока и CRC кодового блока как одного варианта осуществления изобретения, соответствующего принципам настоящего изобретения;4 is a schematic illustration of an example CRC of a transport block and a CRC of a code block as one embodiment of the invention in accordance with the principles of the present invention;
Фиг.5A - схематическая иллюстрация функционирования приемника для вычисления CRC кодового блока и CRC транспортного блока;5A is a schematic illustration of the operation of a receiver for computing a CRC code block and a CRC transport block;
Фиг.5B - схематическая иллюстрация функционирования приемника для вычисления CRC кодового блока и CRC транспортного блока как одного варианта осуществления изобретения, соответствующего принципам настоящего изобретения;Fig. 5B is a schematic illustration of the operation of a receiver for computing a CRC of a code block and a CRC of a transport block as one embodiment of the invention in accordance with the principles of the present invention;
Фиг.5C - схематическая иллюстрация функционирования приемника для вычисления CRC кодового блока и CRC транспортного блока как другого варианта осуществления изобретения, соответствующего принципам настоящего изобретения;5C is a schematic illustration of the operation of a receiver for computing a CRC of a code block and a CRC of a transport block as another embodiment of the invention, consistent with the principles of the present invention;
Фиг.6A - схематическая иллюстрация функционирования передатчика для вычисления CRC кодового блока и CRC транспортного блока как еще одного варианта осуществления изобретения, соответствующего принципам настоящего изобретения;6A is a schematic illustration of the operation of a transmitter for computing a CRC of a code block and a CRC of a transport block as yet another embodiment of the invention in accordance with the principles of the present invention;
Фиг.6B- схематическая иллюстрация функционирования приемника для вычисления CRC кодового блока и CRC транспортного блока как другого варианта осуществления изобретения, соответствующего принципам настоящего изобретения; и6B is a schematic illustration of the operation of a receiver for computing a CRC of a code block and a CRC of a transport block as another embodiment of the invention in accordance with the principles of the present invention; and
Фиг.7 - схематическая иллюстрация примера CRC транспортного блока и CRC кодового блока как одного варианта осуществления изобретения, соответствующего принципам настоящего изобретения.7 is a schematic illustration of an example CRC of a transport block and a CRC of a code block as one embodiment of the invention in accordance with the principles of the present invention.
Подробное описание изобретенияDETAILED DESCRIPTION OF THE INVENTION
Гибридный автоматический запрос на повторную передачу (HARQ) широко используют в системах связи для борьбы с отказами при декодировании и повышения надежности. Как показано на Фиг.1, каждый пакет данных кодируют с использованием некоторой схемы прямого исправления ошибок (FEC) для создания множества субпакетов. Каждый субпакет может содержать только часть кодированных бит. Если произошел отказ при передаче субпакета k, как это указано с помощью сообщения «не подтверждаю (NAK)» в канале обратной связи, подтверждающем передачу, предается субпакет повторной передачи (субпакет k+1), чтобы помочь приемнику декодировать пакет. Субпакеты повторной передачи могут содержать кодовые биты, отличные от предыдущих субпакетов. Приемник может мягко скомбинировать или совместно декодировать все полученные субпакеты, чтобы повысить вероятность успешного декодирования. Обычно максимальное количество передач формируют с учетом надежности, возможной задержки передачи пакета и сложности реализации. Hybrid Automatic Repeat reQuest (HARQ) is widely used in communication systems to combat decoding failure and improve reliability. As shown in FIG. 1, each data packet is encoded using some forward error correction (FEC) scheme to create multiple subpackets. Each subpacket may contain only a portion of the encoded bits. If a failure occurs during the transmission of subpacket k, as indicated by the message “I do not acknowledge (NAK)” in the feedback channel confirming the transmission, a retransmission subpacket (subpacket k + 1) is sent to help the receiver decode the packet. Retransmission subpackets may contain code bits other than previous subpackets. The receiver can gently combine or jointly decode all received subpackets to increase the likelihood of successful decoding. Typically, the maximum number of transmissions is formed taking into account reliability, a possible delay in the transmission of a packet, and complexity of implementation.
В Системе долгосрочного развития (LTE) Проекта партнерства 3-го поколения (3GPP), когда транспортный блок велик, его сегментируют на множество кодовых блоков, так чтобы можно было создать множество кодированных пакетов, что дает преимущество, связанное с возможностью реализации параллельной обработки или конвейерной обработки и обеспечением гибкого компромисса между энергопотреблением и аппаратной сложностью. В текущем техническом решении для канала HS-DSCH создается только одно 24-битовое контрольное значение циклического избыточного кода (CRC) для всего транспортного блока с целью обнаружения ошибок в этом блоке. Если в одном временном интервале передачи (TTI) создается и передается множество кодовых блоков, приемник может правильно декодировать некоторые из этих кодовых блоков и неправильно декодировать другие. В этом случае приемник передаст на передатчик по обратной связи сообщение «не подтверждаю (NAK)», поскольку проверка CRC для данного транспортного блока дала отрицательный результат. Взаимосвязь между транспортным блоком, CRC транспортного блока (TB CRC) и сегментацией кодовых блоков показана на Фиг.2. In the 3rd Generation Partnership Project (3GPP) Long-Term Development System (LTE), when a transport block is large, it is segmented into a plurality of code blocks so that a plurality of coded packets can be created, which provides the advantage of being able to implement parallel processing or pipelining processing and providing a flexible compromise between power consumption and hardware complexity. The current technical solution for the HS-DSCH creates only one 24-bit cyclic redundancy check (CRC) value for the entire transport block in order to detect errors in this block. If multiple code blocks are created and transmitted in one transmission time interval (TTI), the receiver may correctly decode some of these code blocks and incorrectly decode others. In this case, the receiver will send a feedback message "I do not confirm (NAK)" to the transmitter, since the CRC check for this transport block gave a negative result. The relationship between the transport block, transport block CRC (TB CRC) and code block segmentation is shown in FIG. 2.
Положим, что для создания CRC используется L-битовый многочлен CRC. Обозначим порождающий многочлен CRC как Assume that the L-bit polynomial CRC is used to create the CRC. We denote the generating polynomial CRC as
(1) (one)
В общем случае для сообщения: In general, for a message:
(2) (2)
CRC кодирование выполняют в систематическом виде. Обозначим биты четности CRC в указанном сообщении как p0, p1,…, pL-1, которые также можно представить в виде многочленов:CRC coding is performed in a systematic manner. Denote the CRC parity bits in the indicated message as p 0 , p 1 , ..., p L-1 , which can also be represented as polynomials:
(3) (3)
Многочлен p(x) для CRC можно вычислить путем сдвига указанного сообщения на L бит и последующего деления результирующей последовательности на порождающий многочлен g(x). Остатком будет CRC сообщения m(x). В математической формеThe polynomial p (x) for CRC can be calculated by shifting the indicated message by L bits and then dividing the resulting sequence by the generating polynomial g (x). The remainder is the message CRC m (x). In mathematical form
(4) (four)
где q(x) - частное от деления m(x)·xL на g(x). При перестановке членов вышеуказанного уравнения многочленwhere q (x) is the quotient of dividing m (x) · x L by g (x). When rearranging the terms of the above equation, the polynomial
(5) (5)
дает остаток, равный 0, при делении на g(x).gives a remainder of 0 when divided by g (x).
Заметим, что если каждый бит в сообщении является двоичным, то сообщение можно представить в виде многочлена, определенного над двоичным полем Галуа (GF(2)). В этом случае операция '+' и '-' эквивалентны. Другими словами, если биты сообщения являются двоичными, то сообщения с прикрепленным контрольным значением CRC можно представить либо как m(x)· xL + p(x), либо как m(x)· xL - p(x). В дальнейшем описании этого изобретения положим для удобства, что биты сообщения являются двоичными. Однако идеи, раскрытые в этом изобретении, конечно, применимы и для недвоичных бит сообщения. Note that if each bit in the message is binary, then the message can be represented as a polynomial defined over the Galois binary field (GF (2)). In this case, the operation '+' and '-' are equivalent. In other words, if the message bits are binary, then messages with an attached CRC control value can be represented either as m (x) · x L + p (x), or as m (x) · x L - p (x). In the further description of this invention, let us assume for convenience that the message bits are binary. However, the ideas disclosed in this invention are, of course, applicable to non-binary message bits.
В этом изобретении предложены способы и устройство для вычисления множества контрольных значений CRC для передачи, повышающих надежность передачи и уменьшающих сложность передатчика и приемника. The invention provides methods and apparatus for calculating a plurality of CRC control values for transmission, increasing transmission reliability and reducing transmitter and receiver complexity.
Аспекты, признаки и преимущества изобретения станут очевидными из последующего подробного описания, проиллюстрированного несколькими конкретными вариантами осуществления изобретения, включая наилучший вариант, предполагаемый для реализации изобретения. Изобретение также может быть осуществлено согласно другим вариантам, причем его отдельные детали могут быть модифицированы в различных очевидных аспектах при условии, что все эти изменения не выходят за рамки существа и объема изобретения. Соответственно, чертежи и их описание следует рассматривать по своей природе как иллюстрации, а не как ограничения. Изобретение иллюстрируется примером на сопроводительных чертежах, который не является ограничением. В последующих иллюстрациях в качестве примера используется канал данных в системах LTE. Однако показанную здесь методику, конечно, можно использовать в другом канале в системах LTE и других каналах данных, каналах управления или иных каналах в других системах, где это может найти применение. Aspects, features and advantages of the invention will become apparent from the following detailed description, illustrated by several specific embodiments of the invention, including the best option contemplated for implementing the invention. The invention can also be carried out according to other variants, and its individual details can be modified in various obvious aspects, provided that all these changes do not go beyond the essence and scope of the invention. Accordingly, the drawings and their description should be considered by nature as illustrations and not as limitations. The invention is illustrated by an example in the accompanying drawings, which is not a limitation. The following illustrations use the data channel in LTE systems as an example. However, the technique shown here, of course, can be used on another channel in LTE systems and other data channels, control channels, or other channels in other systems where this may find application.
Сначала проиллюстрируем концепцию транспортного блока, кодового блока, контрольного значения циклического избыточного кода (CRC) для транспортного блока и CRC кодового блока. Часть цепи обработки кодирования с использованием CRC транспортного блока, но не CRC кодового блока показана на Фиг.3A. Транспортный блок состоит из потока бит. На шаге 210 вычисляют CRC транспортного блока и прикрепляют его к битовому потоку. Множество транспортных блоков на временном интервале передачи можно последовательно сцепить (шаг 220), если это необходимо. Если размер транспортного блока (или сцепленных транспортных блоков) превышает Z (максимальный размер рассматриваемого кодового блока), то для транспортного блока (или сцепленных транспортных блоков) выполняют сегментацию (шаг 220) на кодовые блоки. Пример результирующих кодовых блоков показан на Фиг.2. На шаге 230 вычисляют CRC кодовых блоков и прикрепляют их к каждому из кодовых блоков. Затем перед передачей кодовых блоков выполняют канальное кодирование (шаг 240), а также гибридный запрос HARQ на физическом уровне и согласование скоростей (шаг 250). First, we illustrate the concept of a transport block, a code block, a cyclic redundancy check (CRC) reference value for a transport block, and a code block CRC. A portion of the coding processing chain using the CRC of the transport block, but not the CRC of the code block, is shown in FIG. 3A. A transport block consists of a bit stream. At
На Фиг.3B показана часть последовательности обработки кодирования с использованием CRC транспортного блока и CRC кодового блока. На шаге 310 вычисляют CRC транспортного блока и прикрепляют его к битовому потоку. На шаге 320 выполняют перемежение бит в транспортном блоке. На шаге 330 выполняют последовательное сцепление множества транспортных блоков на временном интервале передачи (TTI) и выполняют для транспортного блока (или сцепленных транспортных блоков) сегментацию на кодовые блоки (шаг 330). Далее вычисляют CRC кодовых блоков и прикрепляют CRC к каждому из кодовых блоков (шаг 340). Затем перед передачей кодовых блоков выполняют канальное кодирование (шаг 350), а также гибридный запрос HARQ на физическом уровне и согласование скоростей (шаг 360).3B shows a portion of a coding processing sequence using a transport block CRC and a code block CRC. In
В другом примере, показанном на Фиг.3C, CRC транспортного блока вычисляют и прикрепляют к битовому потоку (шаг 410). Множество транспортных блоков на временном интервале передачи (TTI) последовательно сцепляют (шаг 420) и выполняют сегментацию на кодовые блоки для транспортного блока (или сцепленных транспортных блоков) (шаг 420). Перемежают биты в транспортном блоке (шаг 430). Затем CRC кодового блока вычисляют и прикрепляют к каждому из кодовых блоков (шаг 440). Затем перед передачей кодовых блоков выполняют канальное кодирование (шаг 450), а также гибридный запрос HARQ на физическом уровне и согласование скоростей (шаг 460).In another example shown in FIG. 3C, the transport block CRC is calculated and attached to the bitstream (step 410). A plurality of transport blocks in a transmission time interval (TTI) are successively concatenated (step 420) and segmented into code blocks for the transport block (or concatenated transport blocks) (step 420). Interleave the bits in the transport block (step 430). Then, the code block CRCs are calculated and attached to each of the code blocks (step 440). Then, before transmitting the code blocks, channel coding is performed (step 450), as well as a hybrid HARQ request at the physical layer and rate matching (step 460).
Однако заметим, что в последующих вариантах, описанных в этом изобретении, транспортные блоки могут содержать, а могут и не содержать CRC транспортного блока до сцепления транспортных блоков или сегментации на кодовые блоки. После сегментации на кодовые блоки может быть созданы CRC для некоторых или всех кодовых блоков. Положим в иллюстративных целях, что CRC кодового блока создается для каждого кодового блока, хотя идеи, раскрытые в этом изобретении, конечно, применимы и в иных случаях. Для упрощения положим, что имеется только один транспортный блок. Однако все варианты в этом изобретении применимы к случаям, когда имеется множество транспортных блоков и сцепление транспортных блоков. Также заметим, что все варианты в этом изобретении применимы для вычисления CRC как в передатчике, так и в приемнике.However, note that in the subsequent embodiments described in this invention, the transport blocks may or may not contain the CRC of the transport block until the transport blocks are concatenated or segmented into code blocks. After segmentation into code blocks, CRCs may be created for some or all of the code blocks. For illustrative purposes, assume that a code block CRC is created for each code block, although the ideas disclosed in this invention are, of course, applicable in other cases. For simplicity, we assume that there is only one transport block. However, all variations in this invention apply to cases where there are multiple transport blocks and clutch transport blocks. Also note that all the options in this invention are applicable for calculating CRC in both the transmitter and the receiver.
На Фиг.4 показан пример прикрепления CRC транспортного блока (TB CRC) и CRC кодового блока (CB CRC). CB CRC можно использовать для проверки того, правильно ли декодирован кодовый блок, и прекращения дополнительных итераций турбодекодирования турбодекодером, если проверка CB CRC дала положительный результат. Без использования CB CRC турбодекодер может выполнять максимальное количество итераций для каждого кодового блока. Если предположить, что для множества кодовых блоков принят конвейерный вариант обработки в приемнике, то кодовые блоки декодируют последовательно. В случае когда имеется только один канал подтверждения для транспортного блока, для него не будет подтверждения (то есть будет иметь место сообщение «не подтверждаю»), пока имеется ошибка хотя бы в одном кодовом блоке. Если после максимального количества итераций проверка CRC для кодового блока дает отрицательный результат, приемник может пропустить декодирование остальных кодовых блоков и послать сообщение «не подтверждаю». При отсутствии CB CRC приемник может продолжать декодирование других кодовых блоков несмотря на то, что один кодовый блок уже имеет ошибку. После декодирования всех кодовых блоков приемник может проверить контрольное значение TB CRC, чтобы обнаружить, что имеется ошибка в транспортном блоке. Следовательно, введение проверки CB CRC может уменьшить количество ненужных итераций турбодекодирования в приемнике, в результате чего достигается энергосбережение и упрощается обработка. С другой стороны, с каждым использованием CB CRC повышается вероятность ошибочного определения CRC, что может привести к прекращению итераций декодирования, когда кодовый блок был неправильно декодирован. Кроме того, эта ошибка не может быть обнаружена без CRC транспортного блока (TB CRC). Заметим, что необнаруженная ошибка серьезно влияет на связь, поскольку она будет распространяться на более высокие уровни протокола связи и инициировать повторные передачи на более высоком уровне, что снижает общее качество канала связи и ухудшает взаимодействие с пользователем. Таким образом, контрольное значение TB CRC используют для снижения частоты ошибочного определения CRC для всего транспортного блока. Figure 4 shows an example of attaching a transport block CRC (TB CRC) and a code block CRC (CB CRC). CB CRC can be used to verify that the code block is decoded correctly and to terminate additional iterations of turbo decoding by the turbo decoder if the CB CRC test is successful. Without the use of CB CRC, a turbo decoder can perform the maximum number of iterations for each code block. Assuming that for a plurality of code blocks, a pipelined processing option at the receiver is adopted, then the code blocks are decoded sequentially. In the case when there is only one confirmation channel for the transport block, there will be no confirmation for it (that is, the message “I do not confirm” will take place), as long as there is an error in at least one code block. If, after the maximum number of iterations, the CRC check for the code block gives a negative result, the receiver may skip decoding the remaining code blocks and send a “do not confirm” message. In the absence of CB CRC, the receiver may continue to decode other code blocks even though one code block already has an error. After decoding all code blocks, the receiver can check the TB CRC reference value to find that there is an error in the transport block. Therefore, the introduction of a CB CRC check can reduce the number of unnecessary iterations of turbo decoding at the receiver, resulting in energy savings and simplified processing. On the other hand, with each use of CB CRC, the probability of erroneous CRC determination increases, which can lead to the termination of decoding iterations when the code block was incorrectly decoded. In addition, this error cannot be detected without a transport block CRC (TB CRC). Note that an undetected error seriously affects communication, since it will propagate to higher levels of the communication protocol and initiate retransmissions at a higher level, which reduces the overall quality of the communication channel and impairs user interaction. Thus, the TB CRC reference value is used to reduce the frequency of erroneous CRC determination for the entire transport block.
В первом варианте согласно принципам изобретения при вычислении первого CRC используют первый порядок множества бит, а при вычислении второго CRC используют второй порядок множества бит. В примере, показанном на Фиг.4, с целью облегчения реализации для создания как TB CRC, так и CB CRC можно использовать один и тот же порождающий многочлен для CRC. В этом случае, если для создания TB CRC и CB CRC используют один и тот же порядок или битовую последовательность, то ошибочная последовательность, приводящая к ошибочному обнаружению в CB CRC, также может привести к ошибочному обнаружению в TB CRC. Во избежание этого биты переупорядочивают после создания TB CRC, но делают это перед созданием CB CRC. Заметим, что переупорядочивание/перемежение бит может быть применено только к части информационных бит или бит TB CRC. Например, переупорядочивание/перемежение бит можно применить только к информационным битам, но не к битам TB CRC. В альтернативном варианте переупорядочивание/перемежение бит может быть применено как к информационным битам, так и битам TB CRC. In the first embodiment, according to the principles of the invention, the first order of multiple bits is used in calculating the first CRC, and the second order of multiple bits is used in calculating the second CRC. In the example shown in FIG. 4, in order to facilitate implementation, the same generating polynomial for CRC can be used to create both TB CRC and CB CRC. In this case, if the same order or bit sequence is used to create TB CRC and CB CRC, then an erroneous sequence leading to erroneous detection in CB CRC can also lead to erroneous detection in TB CRC. To avoid this, the bits are reordered after creating the TB CRC, but do so before creating the CB CRC. Note that bit reordering / interleaving can only be applied to a portion of information bits or TB CRC bits. For example, bit reordering / interleaving can only be applied to information bits, but not to TB CRC bits. Alternatively, bit reordering / interleaving can be applied to both information bits and TB CRC bits.
На Фиг.3B и 3C показаны два примера того, как может быть выполнено переупорядочивание/перемежение бит в последовательности обработки в передатчике. На Фиг.3B перемежение/переупорядочивание битового потока транспортного блока выполняется перед сегментацией на кодовые блоки; в то время как на Фиг.3C перемежение/переупорядочивание применяется для каждого кодового блока после сегментации на кодовые блоки. Переупорядочивание/перемежение на всем уровне транспортного блока, как показано на Фиг.3B, может вызвать задержку на время обработки для всего транспортного блока; переупорядочивание/перемежение на уровне кодового блока, как показано на Фиг.3C, может вызвать задержку на время обработки одного кодового блока. 3B and 3C show two examples of how bit reordering / interleaving in a processing sequence at a transmitter can be performed. 3B, interleaving / reordering of a transport block bitstream is performed before segmentation into code blocks; while in FIG. 3C, interleaving / reordering is applied to each code block after segmentation into code blocks. Reordering / interleaving at the entire transport block level, as shown in FIG. 3B, may cause a processing time delay for the entire transport block; reordering / interleaving at the code block level, as shown in FIG. 3C, may cause a delay in processing time of one code block.
Аналогичным образом для дальнейшего уменьшения задержки от перемежения можно также использовать шаблоны переупорядочивания/перемежения, которые имеют меньший диапазон, чем кодовый блок. Например, простой шаблон переупорядочивания может представлять собой замену по меньшей мере одного бита другим битом в потоке. Заметим, что такой шаблон переупорядочивания вносит задержку из-за перемежения не более чем на один бит, если указанные два бита являются соседними. Конечно, операция замены может применяться более чем к одному биту в потоке. В действительности, эта операция может применяться ко всем битам в потоке. Одним из примеров может служить замена четных бит нечетными битами. Опять же переупорядочивание/перемежение бит можно применить только к части или ко всем информационным битам, но не к битам TB CRC. В альтернативном варианте переупорядочивание/перемежение бит можно применить как к информационным битам, так и к битам TB CRC. Similarly, to further reduce the delay from interleaving, reordering / interleaving patterns that have a smaller range than the code block can also be used. For example, a simple reordering pattern may be the replacement of at least one bit with another bit in a stream. Note that such a reordering pattern introduces a delay due to interleaving of no more than one bit if the two bits are adjacent. Of course, a replacement operation can be applied to more than one bit in a stream. In fact, this operation can be applied to all bits in a stream. One example is the replacement of even bits with odd bits. Again, the reordering / interleaving of bits can be applied only to part or all of the information bits, but not to TB CRC bits. Alternatively, bit reordering / interleaving can be applied to both information bits and TB CRC bits.
В альтернативном варианте TB CRC можно вычислить с использованием естественного порядка битовой последовательности, а CB CRC вычислять с использованием обратного порядка битовой последовательности. Обратный порядок может быть применен до сегментации транспортного блока. В альтернативном варианте обратный порядок может быть применен после сегментации транспортного блока. Также TB CRC можно вычислить, используя обратный порядок битовой последовательности, а CB CRC вычислить, используя естественный порядок битовой последовательности. Опять же обратный порядок бит может быть применен только к информационным битам, но не к битам TB CRC. В альтернативном варианте обратный порядок бит может быть применен как к информационным битам, так и к битам TB CRC. Заметим, что CB CRC вычисляют на основе обратного порядка битовой последовательности в соответствующем кодовом блоке. Также заметим, что обратный порядок бит, применяемый к информационным битам с или без бит TB CRC, применим только в случае вычисления CB CRC на основе обратного порядка битовой последовательности. Alternatively, TB CRC can be calculated using the natural bit order, and CB CRC can be calculated using the reverse bit order. The reverse order can be applied before the segmentation of the transport block. Alternatively, the reverse order may be applied after segmentation of the transport block. Also, TB CRC can be calculated using the reverse bit sequence, and CB CRC can be calculated using the natural order of the bit sequence. Again, the reverse bit order can only be applied to information bits, but not to TB CRC bits. Alternatively, the reverse bit order can be applied to both information bits and TB CRC bits. Note that CB CRCs are calculated based on the reverse order of the bit sequence in the corresponding code block. Also note that the reverse bit order applied to information bits with or without TB CRC bits is applicable only in the case of calculating CB CRC based on the reverse bit order.
Согласно другому альтернативному варианту переупорядочивание/перемежение бит может быть реализовано как часть блока сцепления/сегментации. Например, если необходима сегментация транспортного блока (вместе с CRC транспортного блока) на множество кодовых блоков, то тогда можно раскидать биты CRC транспортного блока в каждый кодовый блок. Это обеспечивает эффективное перемежение, но можно оспорить такой подход, поскольку в цепи кодирования не создается дополнительный блок. According to another alternative embodiment, the reordering / interleaving of bits may be implemented as part of the block clutch / segmentation. For example, if segmentation of a transport block (together with a CRC of a transport block) into a plurality of code blocks is necessary, then it is possible to scatter CRC bits of a transport block into each code block. This provides efficient interleaving, but this approach can be challenged since no additional block is created in the encoding chain.
На Фиг.5A-5C показаны примеры того, каким образом приемник выполняет переупорядочивание/перемежение битового потока между вычислением CB CRC и вычислением TB CRC. На Фиг.5A показана часть обработки в приемнике в предположении, что между выполнением проверки CB CRC и проверки TB CRC не выполняется переупорядочивание/перемежение бит. В частности, на Фиг.5A при приеме беспроводным терминалом (то есть базовой станцией или блоком пользовательского оборудования) сигнала канала данных сначала на шаге 510 выполняется гибридный запрос HARQ на физическом уровне и согласование скоростей. Затем декодируют кодовые блоки сигнала канала данных (шаг 520). Проверяют CRC кодовых блоков, чтобы выяснить, правильно ли декодированы кодовые блоки (шаг 530). Затем выполняется сцепление кодовых блоков в транспортный блок (шаг 540). Проверяют CRC транспортного блока, чтобы выяснить, правильно ли он декодирован. Если на стороне передатчика применяется переупорядочивание/перемежение бит, как показано на Фиг.3B и 3C, то тогда приемник выполняет соответственно переупорядочивание/обратное перемежение бит, как показано соответственно на Фиг.5B и 5C. На Фиг.5B выполняется переупорядочивание/обратное перемежение (шаг 650) битового потока транспортного блока после сцепления кодовых блоков (шаг 640); в то время как на Фиг.5C переупорядочивание/обратное перемежение осуществляется для каждого кодового блока (шаг 740) до сцепления кодовых блоков (шаг 750). Переупорядочивание/перемежение на уровне всего транспортного блока, как показано на Фиг.5B, может вызвать задержку на время обработки для всего транспортного блока; переупорядочивание/перемежение на уровне кодового блока, как показано на Фиг.5C, может вызвать задержку на время обработки одного кодового блока. 5A-5C show examples of how a receiver performs reordering / interleaving of a bitstream between CB CRC calculation and TB CRC calculation. 5A shows a portion of the processing at the receiver assuming that between the execution of the CB CRC check and the TB CRC check, bit reordering / interleaving is not performed. In particular, in FIG. 5A, when a wireless terminal (i.e., a base station or user equipment unit) receives a data channel signal, a hybrid physical HARQ request and rate matching are first performed in
Очевидно, что путем комбинирования вышеупомянутых вариантов изобретения различными путями можно получить множество других версий, не выходя за рамки существа изобретения. Obviously, by combining the above embodiments of the invention in various ways, many other versions can be obtained without going beyond the scope of the invention.
Во втором варианте осуществления изобретения согласно его принципам при вычислении первого CRC на основе первого множества бит используют первый порождающий многочлен для CRC, в то время как при вычислении второго CRC на основе второго множества бит используют второй порождающий многочлен для CRC, отличающийся от первого порождающего многочлена для CRC. Опять же следует заметить, что Фиг.4 используется здесь в качестве примера. Имеется один CRC транспортного блока, а именно CRC «А». При вычислении CRC «А» на основе всех информационных бит в транспортном блоке, обозначенных как битовый поток STB, как показано на Фиг.4, где STB=S1 ∪ S2 ∪ S3, используют порождающий многочлен g1(x) для CRC. Имеется три CRC кодового блока, а именно CRC «В», CRC «С» и CRC «D» соответственно. Второй порождающий многочлен g2(х), который отличается от g1(x), используют при вычислении CRC «В», «С» и «D» кодового блока. CRC «В» вычисляют на основе информационных бит в первом кодовом блоке, которые обозначены на данной фигуре как битовый поток S1; CRC «С» вычисляют на основе информационных бит во втором кодовом блоке, которые обозначены на данной фигуре как битовый поток S2; CRC «D» вычисляют на основе информационных бит в третьем кодовом блоке, которые обозначены на данной фигуре как битовый поток S3, и CRC «А» транспортного блока. Обозначим битовый поток, полученный путем сцепления S3 и «А» как S4, то есть S4=S3 U «А». Другими словами, CRC «D» вычисляют на основе битового потока S4.In the second embodiment of the invention, according to its principles, when calculating the first CRC based on the first set of bits, the first generating polynomial for CRC is used, while when calculating the second CRC based on the second set of bits, the second generating polynomial for CRC is different from the first generating polynomial for CRC Again, it should be noted that FIG. 4 is used here as an example. There is one CRC transport block, namely CRC "A". In calculating the CRC “A” based on all information bits in the transport block designated as the bit stream S TB , as shown in FIG. 4, where S TB = S 1 ∪ S 2 ∪ S 3 , the generating polynomial g 1 (x) is used for CRC. There are three CRC code blocks, namely CRC “B”, CRC “C” and CRC “D”, respectively. The second generating polynomial g 2 (x), which is different from g 1 (x), is used in calculating the CRC “B”, “C” and “D” of the code block. CRC "B" is calculated based on the information bits in the first code block, which are indicated in this figure as a bit stream S 1 ; CRC "C" is calculated based on the information bits in the second code block, which are indicated in this figure as a bit stream S 2 ; CRC "D" is calculated based on the information bits in the third code block, which are indicated in this figure as the bit stream S 3 , and CRC "A" of the transport block. Denote the bitstream obtained by coupling S 3 and “A” as S 4 , that is, S 4 = S 3 U “A”. In other words, the CRC “D” is calculated based on the bit stream S 4 .
В этом варианте второе множество бит может являться поднабором первого множества бит. Например, многочлен g2(х) используют при вычислении CRC «В» на основе S1, в то время как многочлен g1(х) используют при вычислении CRC «А» на основе STB. Битовый поток S1 является поднабором битового потока STB.In this embodiment, the second plurality of bits may be a subset of the first plurality of bits. For example, the polynomial g 2 (x) is used in computing CRC “B” based on S 1 , while the polynomial g 1 (x) is used in calculating CRC “A” based on S TB . Bit stream S 1 is a subset of bit stream S TB .
В качестве альтернативы первое множество бит может являться расширенным набором второго множества бит. Например, многочлен g1(x) используют при вычислении CRC «А» на основе STB, в то время как g2(x) используют при вычислении CRC «С» на основе S2. Битовый поток STB является расширенным набором битового потока S2. Alternatively, the first plurality of bits may be an extended set of the second plurality of bits. For example, the polynomial g 1 (x) is used in calculating CRC “A” based on S TB, while g 2 (x) is used in calculating CRC “A” based on S 2 . Bit stream S TB is an extended set of bit stream S 2 .
В качестве еще одной альтернативы первое множество бит может перекрываться со вторым множеством бит. Например, многочлен g1(x) используют при вычислении CRC «А» на основе STB, в то время как g2(x) используют при вычислении CRC «D» на основе S4. Битовый поток STB перекрывается с битовым потоком S4, STB ∩ S4=S3.As another alternative, the first plurality of bits may overlap with the second plurality of bits. For example, the polynomial g 1 (x) is used in the calculation of CRC “A” based on S TB, while g 2 (x) is used in the calculation of CRC “A” based on S 4 . The bit stream S TB overlaps with the bit stream S 4 , S TB ∩ S 4 = S 3 .
Первый CRC и второй CRC могут иметь разную длину. The first CRC and the second CRC may have different lengths.
Как альтернатива первый CRC и второй CRC могут иметь одинаковую длину. Например, если первый CRC и второй CRC имеют длину 24 бита, то порождающие многочлены g1(x) и g2(x) для CRC могут быть выбраны следующим образом:As an alternative, the first CRC and the second CRC may be the same length. For example, if the first CRC and the second CRC are 24 bits long, then the generating polynomials g 1 (x) and g 2 (x) for the CRC can be selected as follows:
Как альтернатива порождающие многочлены g1(x) и g2(x) для CRC могут быть выбраны следующим образом: As an alternative, the generating polynomials g 1 (x) and g 2 (x) for CRC can be selected as follows:
На Фиг.6A показаны операции в передатчике при использовании порождающего многочлена g1(x) для CRC для вычисления CRC транспортного блока и порождающего многочлена g2(x) для вычисления CRC кодового блока. На Фиг.6B показаны соответствующие операции в приемнике. В частности, как показано на Фиг.6A, CRC транспортного блока вычисляют на стороне передатчика, используя порождающий многочлен g1(x) для CRC, а затем прикрепляют его к транспортному блоку (шаг 810). Транспортный блок может быть сегментирован на множество кодовых блоков (шаг 820). Вычисляют множество CRC кодовых блоков путем использования порождающего многочлена g2(x) для CRC (шаг 830). Затем выполняется канальное кодирование (шаг 840) и гибридный запрос HARQ на физическом уровне и согласование скоростей (шаг 850). Как показано на Фиг.6B, на стороне приемника при приеме сигнала канала данных сначала выполняется гибридный запрос HARQ на физическом уровне и согласование скоростей (шаг 910). Затем выполняется декодирование кодовых блоков сигнала канала данных (шаг 920). На шаге 930 проверяют CRC кодовых блоков порождающего многочлена g2(x) для CRC, чтобы узнать, правильно ли декодированы кодовые блоки. Затем выполняется сцепление кодовых блоков в транспортный блок (шаг 940). На шаге 950 проверяют CRC транспортного блока, используя порождающий многочлен g1(x) для CRC, чтобы узнать, правильно ли декодирован транспортный блок. FIG. 6A shows operations in a transmitter using a generating polynomial g 1 (x) for CRC to calculate a CRC of a transport block and a generating polynomial g 2 (x) to calculate a CRC of a code block. 6B shows corresponding operations at the receiver. In particular, as shown in FIG. 6A, the transport block CRC is calculated on the transmitter side using the generating polynomial g 1 (x) for the CRC, and then attach it to the transport block (step 810). The transport block may be segmented into multiple code blocks (step 820). Multiple CRC code blocks are calculated by using the generating polynomial g 2 (x) for the CRC (step 830). Then, channel coding is performed (step 840) and a hybrid HARQ request at the physical layer and rate matching (step 850). As shown in FIG. 6B, on the receiver side, when receiving a data channel signal, a hybrid HARQ request at the physical layer and rate matching are first performed (step 910). Then, code blocks of the data channel signal are decoded (step 920). At
Однако заметим, что идеи, раскрытые в этом изобретении, не ограничиваются сферой вычислений CRC транспортных блоков и CRC кодовых блоков. Например, идея, состоящая в использовании разных порождающих многочленов для CRC для вычисления разных CRC на основе перекрывающихся битовых потоков, может быть в общем случае применена к другим техническим решениям, где присутствует множество CRC.However, it is noted that the ideas disclosed in this invention are not limited to computing CRC transport blocks and CRC code blocks. For example, the idea of using different generating polynomials for CRCs to compute different CRCs based on overlapping bit streams can generally be applied to other technical solutions where there are many CRCs.
Например, как показано на Фиг.7, CRC транспортного блока не вычисляется до его сегментации на кодовые блоки. Транспортный блок сегментируют на три кодовых блока. CRC кодового блока вычисляют для каждого из трех кодовых блоков. CB0_CRC получают из бит в кодовом блоке 0, используя порождающий многочлен g1(x); CB1_CRC получают из бит в кодовом блоке 1, используя порождающий многочлен g1(x); CB2_CRC получают из бит в кодовом блоке 0, кодовом блоке 1 и кодовом блоке 2, используя порождающий многочлен g2(x), который отличается от g1(x). CB0_CRC можно использовать для прекращения итераций турбодекодирования или обнаружения ошибок для кодового блока 0, CB1_CRC можно использовать для прекращения итераций турбодекодирования или обнаружения ошибок для кодового блока 1, CB2_CRC можно использовать для прекращения итераций турбодекодирования или обнаружения ошибок для кодового блока 2. В то же время CB2_CRC обеспечивает обнаружение ошибок для всего транспортного блока.For example, as shown in FIG. 7, a transport block CRC is not calculated until it is segmented into code blocks. The transport block is segmented into three code blocks. A code block CRC is calculated for each of the three code blocks. CB0_CRC is obtained from the bits in code block 0 using the generating polynomial g 1 (x); CB1_CRC is obtained from the bits in code block 1 using the generating polynomial g 1 (x); CB2_CRC is obtained from the bits in code block 0, code block 1 and code block 2 using the generating polynomial g 2 (x), which is different from g 1 (x). CB0_CRC can be used to stop iteration of turbo decoding or error detection for code block 0, CB1_CRC can be used to stop iterations of turbo decoding or error detection for code block 1, CB2_CRC can be used to stop iterations of turbodecoding or error detection for code block 2. At the same time CB2_CRC provides error detection for the entire transport block.
Очевидно, что путем комбинирования различными путями вышеупомянутых вариантов осуществления изобретения можно получить множество других версий, не выходя за рамки существа изобретения. Obviously, by combining in various ways the above embodiments of the invention, many other versions can be obtained without departing from the scope of the invention.
Claims (49)
вычисление контрольного значения циклического избыточного кода для транспортного блока на основе информационных бит в транспортном блоке путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода и прикрепление контрольного значения циклического избыточного кода транспортного блока к транспортному блоку;
сегментацию транспортного блока, имеющего контрольное значение циклического избыточного кода транспортного блока, по меньшей мере, на один кодовый блок;
вычисление, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока на основе, по меньшей мере, одного кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем одно контрольное значение циклического избыточного кода для кодового блока вычисляют на основе одного соответствующего кодового блока; и
передачу, по меньшей мере, одного кодового блока, связанного с транспортным блоком, имеющим контрольное значение циклического избыточного кода транспортного блока, и, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока, по меньшей мере, через одну передающую антенну, причем информационные биты в транспортном блоке перемежают после вычисления контрольного значения циклического избыточного кода для транспортного блока, но до вычисления, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока.1. A communication method comprising
computing a cyclic redundancy check value for the transport block based on information bits in the transport block by using the selected generating polynomial for the cyclic redundancy check value and attaching the cyclic redundancy code check value of the transport block to the transport block;
segmenting a transport block having a cyclic redundancy check code value of the transport block into at least one code block;
calculating at least one cyclic redundancy check value for the code block based on at least one code block by using the selected generating polynomial for the cyclic redundancy check value, wherein one cyclic redundancy check value for the code block is calculated based on one corresponding code block; and
transmitting at least one code block associated with a transport block having a cyclic redundancy check code value of a transport block, and at least one cyclic redundancy check code value for a code block, through at least one transmit antenna, wherein information bits in the transport block are interleaved after calculating the control value of the cyclic redundancy code for the transport block, but before calculating at least one control value of the cyclic redundancy code o redundant code for the code block.
вычисление контрольного значения циклического избыточного кода для транспортного блока для последовательности информационных бит в транспортном блоке путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода и прикрепление контрольного значения циклического избыточного кода транспортного блока к транспортному блоку;
сегментацию последовательности информационных бит в транспортном блоке, имеющим контрольное значение циклического избыточного кода транспортного блока, по меньшей мере, на один кодовый блок;
вычисление, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока на основе, по меньшей мере, одного кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем одно контрольное значение циклического избыточного кода для кодового блока вычисляют на основе одного соответствующего кодового блока; и
передачу, по меньшей мере, одного кодового блока, связанного с транспортным блоком, имеющим контрольное значение циклического избыточного кода транспортного блока, и, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока, по меньшей мере, через одну передающую антенну, причем либо битовую последовательность в транспортном блоке, либо битовую последовательность, по меньшей мере, в одном кодовом блоке располагают в обратном порядке перед вычислением соответствующего контрольного значения циклического избыточного кода.9. A communication method comprising
calculating a cyclic redundancy check code value for a transport block for a sequence of information bits in a transport block by using a selected generating polynomial for a cyclic redundancy code check value and attaching a cyclic redundancy code check value to a transport block;
segmentation of a sequence of information bits in a transport block having a control value of a cyclic redundancy code of the transport block by at least one code block;
calculating at least one cyclic redundancy check value for the code block based on at least one code block by using the selected generating polynomial for the cyclic redundancy check value, wherein one cyclic redundancy check value for the code block is calculated based on one corresponding code block; and
transmitting at least one code block associated with a transport block having a cyclic redundancy check code value of a transport block, and at least one cyclic redundancy check code value for a code block, through at least one transmit antenna, wherein either the bit sequence in the transport block or the bit sequence in at least one code block is arranged in the reverse order before calculating the corresponding control value in a loop redundant code.
вычисление контрольного значения циклического избыточного кода для транспортного блока на основе естественного порядка битовой последовательности в транспортном блоке; и
вычисление контрольного значения циклического избыточного кода для кодового блока на основе обратного порядка битовой последовательности в кодовом блоке.10. The method according to claim 9, containing
computing a cyclic redundancy check value for the transport block based on the natural order of the bit sequence in the transport block; and
computing a cyclic redundancy check value for the code block based on the reverse bit sequence in the code block.
вычисление контрольного значения циклического избыточного кода для транспортного блока на основе обратного порядка битовой последовательности в транспортном блоке; и
вычисление контрольного значения циклического избыточного кода для кодового блока на основе естественного порядка битовой последовательности в кодовом блоке.14. The method according to claim 9, containing
computing a cyclic redundancy check value for the transport block based on the reverse bit sequence in the transport block; and
computing a cyclic redundancy check value for the code block based on the natural order of the bit sequence in the code block.
вычисление контрольного значения циклического избыточного кода для транспортного блока на основе информационных бит в транспортном блоке путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода и прикрепление контрольного значения циклического избыточного кода транспортного блока к транспортному блоку;
сегментацию транспортного блока, имеющего контрольное значение циклического избыточного кода транспортного блока, по меньшей мере, на один кодовый блок;
распределение бит в контрольном значении циклического избыточного кода для транспортного блока в каждый из кодовых блоков;
вычисление множества контрольных значений циклического избыточного кода для кодового блока на основе множества кодовых блоков путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем каждое контрольное значение циклического избыточного кода для кодового блока вычисляют на основе соответствующего кодового блока; и
передачу множества кодовых блоков, связанных с транспортным блоком, имеющим контрольное значение циклического избыточного кода транспортного блока, и множества контрольных значений циклического избыточного кода для кодового блока, по меньшей мере, через одну передающую антенну.15. A communication method comprising
computing a cyclic redundancy check value for the transport block based on information bits in the transport block by using the selected generating polynomial for the cyclic redundancy check value and attaching the cyclic redundancy code check value of the transport block to the transport block;
segmenting a transport block having a cyclic redundancy check code value of the transport block into at least one code block;
the distribution of bits in the control value of the cyclic redundancy code for the transport block in each of the code blocks;
calculating a plurality of cyclic redundancy check values for the code block based on the plurality of code blocks by using the selected generating polynomial for the cyclic redundancy check value, each cyclic redundancy check value for the code block being calculated based on the corresponding code block; and
transmitting a plurality of code blocks associated with a transport block having a cyclic redundancy check code value of a transport block, and a plurality of cyclic redundancy code control values for a code block, via at least one transmit antenna.
прием, по меньшей мере, одного кодового блока битовой последовательности и, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока, по меньшей мере, через одну приемную антенну;
декодирование, по меньшей мере, одного кодового блока;
проверку, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода для определения, правильно ли декодирован, по меньшей мере, один кодовый блок;
при правильном декодировании, по меньшей мере, одного кодового блока, последовательное соединение этого, по меньшей мере, одного кодового блока для создания транспортного блока; и
проверку контрольного значения циклического избыточного кода для транспортного блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода для определения, правильно ли декодирован транспортный блок, причем битовую последовательность либо в, по меньшей мере, одном кодовом блоке, либо в транспортном блоке переупорядочивают после проверки контрольного значения циклического избыточного кода, по меньшей мере, одного кодового блока, но перед проверкой контрольного значения циклического избыточного кода для транспортного блока.16. A method of communicating, comprising
receiving at least one code block of the bit sequence and at least one cyclic redundancy check value for the code block through at least one receiving antenna;
decoding at least one code block;
checking at least one cyclic redundancy check value for the code block by using the selected generating polynomial for the cyclic redundancy check value to determine if at least one code block is decoded correctly;
when correctly decoding at least one code block, the serial connection of this at least one code block to create a transport block; and
checking the cyclic redundancy check value for the transport block by using the selected generating polynomial for the cyclic redundancy check value to determine whether the transport block is decoded correctly, and the bit sequence in either at least one code block or the transport block is reordered after checking the control value of the cyclic redundant code of at least one code block, but before checking the control value, the cycle Cesky redundancy for the transport block.
вычисление множества контрольных значений циклического избыточного кода для множества бит путем использования множества порождающих многочленов для контрольного значения циклического избыточного кода, причем первый порождающий многочлен для контрольного значения циклического избыточного кода используют для вычисления первого контрольного значения циклического избыточного кода на основе множества бит транспортного блока, а второй порождающий многочлен для контрольного значения циклического избыточного кода используют для вычисления второго контрольного значения циклического избыточного кода на основе множества бит кодового блока; и
передачу множества бит и множества контрольных значений циклического избыточного кода, по меньшей мере, через одну передающую антенну.19. A communication method comprising
computing a plurality of cyclic redundancy check values for a plurality of bits by using a plurality of generating polynomials for a cyclic redundancy check value, the first generating polynomial for a cyclic redundancy check value being used to calculate a first cyclic redundancy check value based on a plurality of transport block bits, and a second the generating polynomial for the cyclic redundancy check value is used to subtract dividing a second cyclic redundancy check value based on a plurality of bits of a code block; and
transmitting a plurality of bits and a plurality of cyclic redundancy check values through at least one transmit antenna.
g1(x)=x24+х23+х6+х5+х+1 и
g2(x)=x24+x23+x14+x12+x8+1.25. The method according to paragraph 24, containing the first control value of the cyclic redundancy code and the second control value of the cyclic redundancy code having a length of 24 bits, as well as the first generating polynomial g 1 (x) for the control value of the cyclic redundancy code and the second generating polynomial g 2 (x) for the control value of the cyclic redundancy code, which are respectively set in the form:
g 1 (x) = x 24 + x 23 + x 6 + x 5 + x + 1 and
g 2 (x) = x 24 + x 23 + x 14 + x 12 + x 8 +1.
gl(x)=x24+x23+x14+x12+x8+1 и
g2(x)=x24+x23+x6+x5+x+1.26. The method according to paragraph 24, containing the first control value of the cyclic redundancy code and the second control value of the cyclic redundancy code having a length of 24 bits, as well as the first generating polynomial g 1 (x) for the control value of the cyclic redundancy code and the second generating polynomial g 2 (x) for the control value of the cyclic redundancy code, which are respectively set in the form:
g l (x) = x 24 + x 23 + x 14 + x 12 + x 8 +1 and
g 2 (x) = x 24 + x 23 + x 6 + x 5 + x + 1.
вычисление контрольного значения циклического избыточного кода для транспортного блока на основе множества бит транспортного блока путем использования первого порождающего многочлена для контрольного значения циклического избыточного кода;
сегментацию транспортного блока, по меньшей мере, на один кодовый блок;
вычисление, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока на основе множества бит, по меньшей мере, одного кодового блока путем использования второго порождающего многочлена для контрольного значения циклического избыточного кода, причем одно контрольное значение циклического избыточного кода для кодового блока вычисляют на основе одного соответствующего кодового блока; и
передачу, по меньшей мере, одного кодового блока и, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока, по меньшей мере, через одну передающую антенну.27. A communication method comprising
computing a cyclic redundancy check value for a transport block based on a plurality of bits of a transport block by using a first generating polynomial for a cyclic redundancy check value;
segmentation of the transport block into at least one code block;
calculating at least one cyclic redundancy check value for a code block based on a plurality of bits of at least one code block by using a second generating polynomial for a cyclic redundancy check value, wherein one cyclic redundancy check value for a code block is calculated based on one corresponding code block; and
transmitting at least one code block and at least one cyclic redundancy check value for the code block through at least one transmit antenna.
декодирование, по меньшей мере, одного кодового блока;
проверку, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока путем использования второго порождающего многочлена для контрольного значения циклического избыточного кода для определения, правильно ли декодирован, по меньшей мере, один кодовый блок;
при правильном декодировании, по меньшей мере, одного кодового блока, последовательное соединение этого, по меньшей мере, одного кодового блока для создания транспортного блока; и
проверку контрольного значения циклического избыточного кода для транспортного блока путем использования первого порождающего многочлена для контрольного значения циклического избыточного кода для определения, правильно ли декодирован транспортный блок.28. A communication method comprising: receiving at least one code block of a bit sequence and at least one cyclic redundancy check value for a code block through at least one receiving antenna;
decoding at least one code block;
checking at least one cyclic redundancy check value for the code block by using a second generating polynomial for the cyclic redundancy check value to determine if the at least one code block is correctly decoded;
when correctly decoding at least one code block, the serial connection of this at least one code block to create a transport block; and
checking the cyclic redundancy check value for the transport block by using the first generating polynomial for the cyclic redundancy check value to determine if the transport block is decoded correctly.
генератор контрольного значения циклического избыточного кода для транспортного блока, вычисляющий контрольное значение циклического избыточного кода для транспортного блока на основе информационных бит в транспортном блоке путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода и прикрепляющий контрольное значение циклического избыточного кода транспортного блока к транспортному блоку;
генератор кодовых блоков, сегментирующий транспортный блок, имеющий значение циклического избыточного кода транспортного блока, по меньшей мере, на один кодовый блок;
генератор, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока, вычисляющий, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока на основе, по меньшей мере, одного кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем одно контрольное значение циклического избыточного кода для кодового блока вычисляют на основе одного соответствующего кодового блока;
блок перемежения, перемежающий информационные биты в транспортном блоке после вычисления генератором контрольного значения циклического избыточного кода для транспортного блока контрольного значения циклического избыточного кода для транспортного блока, но до вычисления генератором контрольного значения циклического избыточного кода для кодового блока, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока; и
по меньшей мере, одну антенну, передающую, по меньшей мере, один кодовый блок, связанный с транспортным блоком, имеющим контрольное значение циклического избыточного кода транспортного блока, и, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока.29. A wireless terminal in a communication system, comprising
a cyclic redundancy check code generator for a transport block calculating a cyclic redundancy check code value for a transport block based on information bits in a transport block by using a selected generating polynomial for a cyclic redundancy check code value and attaching a cyclic redundancy check code value of a transport block to a transport block;
a code block generator segmenting a transport block having a cyclic redundancy code of the transport block by at least one code block;
a generator of at least one cyclic redundancy check code value for a code block, computing at least one cyclic redundancy check code value for a code block based on at least one code block by using a selected generating polynomial for a cyclic check value a redundant code, wherein one cyclic redundancy check code value for a code block is calculated based on one corresponding code block;
an interleaver interleaving information bits in the transport block after the generator calculates the cyclic redundancy check code for the transport block by the generator of the cyclic redundancy check code for the transport block, but before the cyclic redundancy code checksum for the code block generates at least one cyclic redundancy check code redundant code for a code block; and
at least one antenna transmitting at least one code block associated with a transport block having a cyclic redundancy check code value of a transport block, and at least one cyclic redundancy check code value for a code block.
генератор контрольного значения циклического избыточного кода для транспортного блока, вычисляющий контрольное значение циклического избыточного кода для транспортного блока для последовательности информационных бит в транспортном блоке путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода и прикрепляющий контрольное значение циклического избыточного кода транспортного блока к транспортному блоку;
генератор кодовых блоков, сегментирующий последовательность информационных бит в транспортном блоке, имеющем контрольное значение циклического избыточного кода транспортного блока, по меньшей мере, на один кодовый блок;
генератор контрольного значения циклического избыточного кода для кодового блока, вычисляющий, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока на основе, по меньшей мере, одного кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем одно контрольное значение циклического избыточного кода для кодового блока вычисляют на основе одного соответствующего кодового блока;
блок переупорядочивания, выполняющий обратное упорядочивание либо битовой последовательности в транспортном блоке, либо битовой последовательности, по меньшей мере, в одном кодовом блоке перед тем, как либо генератор контрольного значения циклического избыточного кода для транспортного блока, либо генератор контрольного значения циклического избыточного кода для кодового блока вычислит соответствующее контрольное значение циклического избыточного кода; и
по меньшей мере, одну антенну, передающую, по меньшей мере, один кодовый блок, связанный с транспортным блоком, имеющим контрольное значение циклического избыточного кода транспортного блока, и, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока.35. A wireless terminal in a communication system, comprising
a cyclic redundancy check code generator for a transport block, calculating a cyclic redundancy check code value for a transport block for a sequence of information bits in a transport block by using a selected generating polynomial for a cyclic redundancy check value and attaching a cyclic redundancy check code value of a transport block to a transport block;
a code block generator segmenting a sequence of information bits in a transport block having a control value of a cyclic redundancy code of the transport block by at least one code block;
a cyclic redundancy check code generator for a code block, computing at least one cyclic redundancy check code for a code block based on at least one code block by using a selected generating polynomial for a cyclic redundancy check value, and one control the cyclic redundancy value for the code block is calculated based on one corresponding code block;
a reordering unit that reorders either a bit sequence in a transport block or a bit sequence in at least one code block before either a cyclic redundancy check value generator for a transport block or a cyclic redundancy check value generator for a code block computes the corresponding cyclic redundancy check value; and
at least one antenna transmitting at least one code block associated with a transport block having a cyclic redundancy check code value of a transport block, and at least one cyclic redundancy check code value for a code block.
генератор контрольного значения циклического избыточного кода для транспортного блока, вычисляющий контрольное значение циклического избыточного кода для транспортного блока на основе естественного порядка битовой последовательности в транспортном блоке; и
генератор контрольного значения циклического избыточного кода для кодового блока, вычисляющий контрольное значение циклического избыточного кода для кодового блока на основе обратного порядка битовой последовательности в кодовом блоке.36. The wireless terminal according to clause 35, containing
a cyclic redundancy check code generator for a transport block calculating a cyclic redundancy check code value for a transport block based on the natural order of the bit sequence in the transport block; and
a cyclic redundancy check code generator for a code block, calculating a cyclic redundancy check code value for a code block based on the reverse order of the bit sequence in the code block.
генератор контрольного значения циклического избыточного кода для транспортного блока, вычисляющий контрольное значение циклического избыточного кода для транспортного блока на основе обратного порядка битовой последовательности в транспортном блоке; и
генератор контрольного значения циклического избыточного кода для кодового блока, вычисляющий контрольное значение циклического избыточного кода для кодового блока на основе естественного порядка битовой последовательности в кодовом блоке.37. The wireless terminal according to clause 35, containing
a cyclic redundancy check code generator for a transport block calculating a cyclic redundancy check code value for a transport block based on the reverse bit sequence in the transport block; and
a cyclic redundancy check code generator for a code block computing a cyclic redundancy check code value for a code block based on the natural order of the bit sequence in the code block.
для транспортного блока, вычисляющий контрольное значение циклического избыточного кода для транспортного блока на основе информационных бит в транспортном блоке путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода и прикрепляющий контрольное значение циклического избыточного кода транспортного блока к транспортному блоку;
генератор кодовых блоков, сегментирующий транспортный блок, имеющий контрольное значение циклического избыточного кода транспортного блока, по меньшей мере, на один кодовый блок;
блок распределения, распределяющий биты в контрольном значении циклического избыточного кода для транспортного блока в каждый из кодовых блоков;
генератор контрольного значения циклического избыточного кода для кодового блока, вычисляющий множество контрольных значений циклического избыточного кода для кодового блока на основе множества кодовых блоков путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода, причем каждое контрольное значение циклического избыточного кода для кодового блока вычисляют на основе соответствующего кодового блока; и
по меньшей мере, одну антенну, передающую множество кодовых блоков, связанных с транспортным блоком, имеющим контрольное значение циклического избыточного кода транспортного блока, и множество контрольных значений циклического избыточного кода для кодового блока.38. A wireless terminal in a communication system comprising a cyclic redundancy check value generator
for a transport block, calculating a cyclic redundancy check code value for a transport block based on information bits in a transport block by using a selected generating polynomial for a cyclic redundancy code check value and attaching a cyclic redundancy code check value to a transport block;
a code block generator segmenting a transport block having a control value of a cyclic redundancy code of the transport block by at least one code block;
a distribution unit allocating bits in a cyclic redundancy check code value for a transport block to each of the code blocks;
a cyclic redundancy check code generator for a code block computing a plurality of cyclic redundancy check values for a code block based on a plurality of code blocks by using a selected generating polynomial for a cyclic redundancy check value, each cyclic redundancy check value for a code block is calculated based on corresponding code block; and
at least one antenna transmitting a plurality of code blocks associated with a transport block having a cyclic redundancy check code value of a transport block, and a plurality of cyclic redundancy code check values for a code block.
по меньшей мере, одну антенну, принимающую, по меньшей мере, один кодовый блок битовой последовательности и, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока;
блок декодирования кодовых блоков, декодирующий, по меньшей мере, один кодовый блок;
блок проверки контрольного значения циклического избыточного кода для кодового блока, проверяющий, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода для определения, правильно ли декодирован, по меньшей мере, один кодовый блок;
генератор транспортного блока, последовательно соединяющий, по меньшей мере, один кодовый блок для создания транспортного блока;
блок проверки контрольного значения циклического избыточного кода для транспортного блока, проверяющий контрольное значение циклического избыточного кода для транспортного блока путем использования выбранного порождающего многочлена для контрольного значения циклического избыточного кода для определения, правильно ли декодирован транспортный блок;
блок переупорядочивания, переупорядочивающий битовую последовательность либо в, по меньшей мере, одном кодовом блоке, либо в транспортном блоке после проверки блоком проверки контрольного значения циклического избыточного кода для кодового блока, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока, но перед проверкой блоком проверки контрольного значения циклического избыточного кода для транспортного блока контрольного значения циклического избыточного кода для транспортного блока.39. A wireless terminal in a communication system, comprising
at least one antenna receiving at least one code block of a bit sequence and at least one cyclic redundancy check value for a code block;
a code block decoding unit decoding at least one code block;
a cyclic redundancy check code check unit for a code block that checks at least one cyclic redundancy check code value for a code block by using a selected generating polynomial for a cyclic redundancy check value to determine if at least one code code is decoded correctly block;
a transport block generator that connects at least one code block in series to create a transport block;
a cyclic redundancy check code check unit for a transport block verifying a cyclic redundancy check code value for a transport block by using a selected generating polynomial for a cyclic redundancy check code value to determine if the transport block is decoded correctly;
a reordering unit reordering a bit sequence in either at least one code block or a transport block after the verification unit checks the cyclic redundancy check value for the code block by at least one cyclic redundancy check value for the code block, but before checking by the verification unit of the control value of the cyclic redundancy code for the transport block of the control value of the cyclic redundancy code for the transport block.
по меньшей мере, один генератор контрольного значения циклического избыточного кода, вычисляющий множество контрольных значений циклического избыточного кода для множества бит путем использования множества порождающих многочленов для контрольного значения циклического избыточного кода, причем первый порождающий многочлен для контрольного значения циклического избыточного кода используют для вычисления первого контрольного значения циклического избыточного кода на основе множества бит транспортного блока, а второй порождающий многочлен для контрольного значения циклического избыточного кода используют для вычисления второго контрольного значения циклического избыточного кода на основе множества бит кодового блока; и
по меньшей мере, одну антенну, передающую множество бит и множество контрольных значений циклического избыточного кода.42. A wireless terminal in a communication system, comprising
at least one cyclic redundancy check value generator calculating a plurality of cyclic redundancy check values for a plurality of bits by using a plurality of generating polynomials for a cyclic redundancy check value, the first generating polynomial for a cyclic redundancy check value being used to calculate the first control value cyclic redundancy code based on the many bits of the transport block, and the second generating nogochlen reference value for the cyclic redundancy code is used for calculating a second reference value of the cyclic redundancy code based on the plurality of bits of the code block; and
at least one antenna transmitting a plurality of bits and a plurality of cyclic redundancy check values.
генератор контрольного значения циклического избыточного кода для транспортного блока, вычисляющий контрольное значение циклического избыточного кода для транспортного блока на основе множества бит транспортного блока путем использования первого порождающего многочлена для контрольного значения циклического избыточного кода;
генератор кодовых блоков, сегментирующий транспортный блок, по меньшей мере, на один кодовый блок;
генератор, по меньшей мере, одного контрольного значения циклического избыточного кода для кодового блока, вычисляющий, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока на основе множества бит, по меньшей мере, одного кодового блока путем использования второго порождающего многочлена для контрольного значения циклического избыточного кода, причем одно контрольное значение циклического избыточного кода для кодового блока вычисляют на основе одного соответствующего кодового блока; и
по меньшей мере, одну антенну, передающую, по меньшей мере, один кодовый блок и, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока.48. A wireless terminal in a communication system, comprising
a cyclic redundancy check code generator for a transport block calculating a cyclic redundancy check code value for a transport block based on a plurality of bits of a transport block by using a first generating polynomial for a cyclic redundancy check value;
a code block generator segmenting a transport block into at least one code block;
a generator of at least one cyclic redundancy check code value for a code block, computing at least one cyclic redundancy check code value for a code block based on a plurality of bits of at least one code block by using a second generating polynomial for the control cyclic redundancy code values, wherein one cyclic redundancy check code value for a code block is calculated based on one corresponding code block; and
at least one antenna transmitting at least one code block and at least one cyclic redundancy check value for the code block.
по меньшей мере, одну антенну, принимающую, по меньшей мере, один кодовый блок битовой последовательности и, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока;
блок декодирования кодовых блоков, декодирующий, по меньшей мере, один кодовый блок;
блок проверки контрольного значения циклического избыточного кода для кодового блока, проверяющий, по меньшей мере, одно контрольное значение циклического избыточного кода для кодового блока путем использования второго порождающего многочлена для контрольного значения циклического избыточного кода для определения, правильно ли декодирован, по меньшей мере, один кодовый блок;
генератор транспортного блока, последовательно соединяющий, по меньшей мере, один кодовый блок для создания транспортного блока; и
блок проверки контрольного значения циклического избыточного кода для транспортного блока, проверяющий контрольное значение циклического избыточного кода для транспортного блока путем использования первого порождающего многочлена для контрольного значения циклического избыточного кода для определения, правильно ли декодирован транспортный блок. 49. A wireless terminal in a communication system, comprising
at least one antenna receiving at least one code block of a bit sequence and at least one cyclic redundancy check value for a code block;
a code block decoding unit decoding at least one code block;
a cyclic redundancy check code check unit for a code block that checks at least one cyclic redundancy check code value for a code block by using a second generating polynomial for a cyclic redundancy check value to determine if at least one code code is decoded correctly block;
a transport block generator that connects at least one code block in series to create a transport block; and
a cyclic redundancy check code check unit for a transport block verifying a cyclic redundancy check code value for a transport block by using a first generating polynomial for a cyclic redundancy check code value to determine whether the transport block is decoded correctly.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US96016107P | 2007-09-18 | 2007-09-18 | |
US60/960,161 | 2007-09-18 | ||
US12/213,579 | 2008-06-20 | ||
US12/213,579 US8555148B2 (en) | 2007-09-18 | 2008-06-20 | Methods and apparatus to generate multiple CRCs |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2010110135A RU2010110135A (en) | 2011-09-27 |
RU2441328C2 true RU2441328C2 (en) | 2012-01-27 |
Family
ID=40455888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2010110135/08A RU2441328C2 (en) | 2007-09-18 | 2008-09-12 | Methods and apparatus for generating multiple cyclic redundancy code (crc) values |
Country Status (8)
Country | Link |
---|---|
US (1) | US8555148B2 (en) |
JP (3) | JP5349480B2 (en) |
KR (2) | KR101600097B1 (en) |
CN (3) | CN104253669B (en) |
AU (1) | AU2008301483B2 (en) |
CA (1) | CA2699732C (en) |
RU (1) | RU2441328C2 (en) |
WO (1) | WO2009038313A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2739582C1 (en) * | 2017-08-07 | 2020-12-28 | Хуавей Текнолоджиз Ко., Лтд. | Encoding device and method |
US11121809B2 (en) | 2017-08-07 | 2021-09-14 | Huawei Technologies Co., Ltd. | Channel coding method and apparatus in wireless communications |
Families Citing this family (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8386878B2 (en) * | 2007-07-12 | 2013-02-26 | Samsung Electronics Co., Ltd. | Methods and apparatus to compute CRC for multiple code blocks |
US8555148B2 (en) * | 2007-09-18 | 2013-10-08 | Samsung Electronics Co., Ltd. | Methods and apparatus to generate multiple CRCs |
US8375271B2 (en) * | 2007-10-26 | 2013-02-12 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for providing adaptive cyclic redundancy check computation |
US8656248B2 (en) * | 2007-12-13 | 2014-02-18 | Qualcomm Incorporated | Hierarchical CRC scheme |
WO2009091958A1 (en) * | 2008-01-17 | 2009-07-23 | Amphenol Corporation | Interposer assembly and method |
KR101526990B1 (en) * | 2008-01-31 | 2015-06-11 | 엘지전자 주식회사 | Method for determining transport block size and signal transmission method using the same |
WO2009096658A1 (en) | 2008-01-31 | 2009-08-06 | Lg Electronics Inc. | Method for determining transport block size and signal transmission method using the same |
US8103928B2 (en) * | 2008-08-04 | 2012-01-24 | Micron Technology, Inc. | Multiple device apparatus, systems, and methods |
ES2547542T3 (en) | 2008-08-12 | 2015-10-07 | Koninklijke Philips N.V. | Communications procedure in a network, radio stations and system for the same |
US8892983B2 (en) | 2008-11-04 | 2014-11-18 | Alcatel Lucent | Method and apparatus for error detection in a communication system |
KR101737831B1 (en) * | 2009-02-02 | 2017-05-19 | 엘지전자 주식회사 | Method of mapping transport sequences to component carriers in a wireless communication system |
EP2415220B1 (en) * | 2009-04-01 | 2013-08-21 | Koninklijke Philips Electronics N.V. | Frame concatenation in wireless uwb devices |
WO2010146971A1 (en) | 2009-06-16 | 2010-12-23 | シャープ株式会社 | Mobile station device, base station device, radio communication method and communication program |
DE102010028485B4 (en) * | 2010-05-03 | 2024-05-29 | Robert Bosch Gmbh | Method and device for securing data packets to be transmitted via an interface |
CN101854230B (en) * | 2010-05-10 | 2013-04-24 | 武汉大学 | Device and method for improving retransmission efficiency of communication system |
US9125068B2 (en) | 2010-06-04 | 2015-09-01 | Ixia | Methods, systems, and computer readable media for simulating realistic movement of user equipment in a long term evolution (LTE) network |
US20120183234A1 (en) * | 2011-01-14 | 2012-07-19 | Sony Corporation | Methods for parallelizing fixed-length bitstream codecs |
CN102136881B (en) * | 2011-01-24 | 2013-12-04 | 华为技术有限公司 | Cyclic redundancy check processing method and device |
CN102130744B (en) * | 2011-03-25 | 2014-12-31 | 中兴通讯股份有限公司 | Method and device for computing Cyclic Redundancy Check (CRC) code |
CN102340378A (en) * | 2011-10-23 | 2012-02-01 | 许继集团有限公司 | Fiber channel cyclic redundancy check (CRC) method for longitudinal protection |
US9154979B2 (en) | 2011-12-14 | 2015-10-06 | Ixia | Scalable architecture for long term evolution (LTE) multiple user equipment (multi-UE) simulation |
US8855070B2 (en) | 2011-12-14 | 2014-10-07 | Ixia | Methods, systems, and computer readable media for improved long term evolution (LTE) hybrid automatic repeat request (HARQ) processing |
US9204325B2 (en) | 2011-12-20 | 2015-12-01 | Ixia | Methods, systems, and computer readable media for reducing the impact of false downlink control information (DCI) detection in long term evolution (LTE) physical downlink control channel (PDCCH) data |
US8839062B2 (en) | 2012-01-11 | 2014-09-16 | International Business Machines Corporation | Incremental modification of an error detection code background of the invention |
US9071995B2 (en) | 2012-01-17 | 2015-06-30 | Ixia | Methods, systems, and computer readable media for long term evolution (LTE) uplink data processing |
US8908535B2 (en) | 2012-02-10 | 2014-12-09 | Ixia | Methods, traffic simulators, and computer readable media for validating long term evolution (LTE) code blocks and transport blocks |
US8724498B2 (en) | 2012-02-14 | 2014-05-13 | Ixia | Methods, systems, and computer readable media for performing long term evolution (LTE) channel delineation |
US8892829B2 (en) | 2012-02-29 | 2014-11-18 | Ixia | Methods, systems, and computer readable media for integrated sub-block interleaving and rate matching |
US9668167B2 (en) | 2012-03-16 | 2017-05-30 | Qualcomm Incorporated | Transport block size limitation for enhanced control channel operation in LTE |
US8738985B2 (en) * | 2012-03-28 | 2014-05-27 | Ixia | Methods, systems, and computer readable media for dynamically controlling a turbo decoding process in a long term evolution (LTE) multi-user equipment (UE) traffic simulator |
US9131000B2 (en) | 2012-04-13 | 2015-09-08 | Ixia | Methods, systems, and computer readable media for heuristics-based adaptive protocol parsing |
CN103378941B (en) * | 2012-04-24 | 2019-01-01 | 马维尔国际有限公司 | Cyclic redundancy check method and device for wireless communication system |
US8839079B2 (en) * | 2012-08-20 | 2014-09-16 | Qualcomm Incorporated | Methods and apparatuses for saving power during transport block decoding in UMTS systems |
US9198065B2 (en) | 2013-03-15 | 2015-11-24 | Ixia | Methods, systems, and computer readable media for utilizing adaptive symbol processing in a multiple user equipment (multi-UE) simulator |
JP2015019276A (en) * | 2013-07-11 | 2015-01-29 | 株式会社東芝 | Storage device, crc generation device and crc generation method |
US10312936B2 (en) | 2014-01-17 | 2019-06-04 | Texas Instruments Incorporated | Using CRC residual value to distinguish a recipient of a data packet in a communication system |
CN105515719B (en) * | 2014-09-24 | 2019-04-26 | 中兴通讯股份有限公司 | A kind of data transmission method and device |
KR101655809B1 (en) * | 2014-11-20 | 2016-09-08 | (주)에프씨아이 | Method and Apparatus for Cyclic Redundancy Check Calculation by Using Multiple Look Up Table |
CN104579561A (en) * | 2014-12-23 | 2015-04-29 | 国电南瑞科技股份有限公司 | Coding method for improving longitudinal differential protection performance |
EP3353926A1 (en) * | 2015-09-24 | 2018-08-01 | IDAC Holdings, Inc. | Methods for enhanced multiplexing in wireless systems |
CN106817192B (en) * | 2015-11-30 | 2020-08-14 | 华为技术有限公司 | Error estimation method, base station and terminal |
US10108512B2 (en) * | 2016-04-01 | 2018-10-23 | Intel Corporation | Validation of memory on-die error correction code |
US10291356B2 (en) * | 2016-05-11 | 2019-05-14 | Futurewei Technologies, Inc. | Decoding procedures in systems with codeblock segmentation |
US10313057B2 (en) * | 2016-06-01 | 2019-06-04 | Qualcomm Incorporated | Error detection in wireless communications using sectional redundancy check information |
US10469104B2 (en) | 2016-06-14 | 2019-11-05 | Qualcomm Incorporated | Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes |
WO2018012637A1 (en) * | 2016-07-15 | 2018-01-18 | シャープ株式会社 | Transmission device, reception device, communication method, and integrated circuit |
JP2019536298A (en) * | 2016-08-01 | 2019-12-12 | ハネウェル・インターナショナル・インコーポレーテッドHoneywell International Inc. | Portable data link device for listening to data communication or voice communication |
CN110169161B (en) * | 2016-10-20 | 2023-05-30 | 夏普株式会社 | Terminal device, base station device, and communication method |
CN109039545B (en) * | 2016-12-28 | 2021-01-01 | 上海朗帛通信技术有限公司 | Method and equipment in UE (user equipment) and base station for channel coding |
CN108282246B (en) * | 2017-01-05 | 2023-09-01 | 华为技术有限公司 | Information processing method, equipment and communication system |
CN108347311B (en) * | 2017-01-25 | 2021-05-11 | 华为技术有限公司 | Method for sending and receiving feedback information, access network equipment and terminal equipment |
WO2018141293A1 (en) * | 2017-02-06 | 2018-08-09 | Mediatek Inc. | Method and apparatus for communication |
CN108540258B (en) * | 2017-03-01 | 2022-07-01 | 中兴通讯股份有限公司 | Cyclic redundancy code checking method and device |
MX2019000572A (en) | 2017-03-08 | 2019-07-04 | Lg Electronics Inc | Method and apparatus for transmitting and receiving wireless signal in wireless communication system. |
CN108631815B (en) | 2017-03-24 | 2021-05-04 | 华为技术有限公司 | Data transmission method, network equipment and terminal equipment |
EP3619811A4 (en) * | 2017-05-04 | 2021-01-13 | Nokia Technologies Oy | Distributed crc polar codes |
US10312939B2 (en) | 2017-06-10 | 2019-06-04 | Qualcomm Incorporated | Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code |
CN109120373B (en) | 2017-06-23 | 2021-02-12 | 华为技术有限公司 | Channel coding method, data receiving method and related equipment |
EP3667962B1 (en) * | 2017-08-08 | 2022-10-26 | Vivo Mobile Communication Co., Ltd. | Method and device for cyclic redundancy check |
CN111052614B (en) * | 2017-09-01 | 2024-03-08 | 上海诺基亚贝尔股份有限公司 | Message processing and corresponding device |
CN107704335B (en) * | 2017-09-28 | 2019-08-20 | 华南理工大学 | A kind of CRC concurrent operation IP kernel based on FPGA |
WO2019095190A1 (en) * | 2017-11-16 | 2019-05-23 | Qualcomm Incorporated | Reduced overhead error detection code design for decoding a codeword |
KR20190060605A (en) * | 2017-11-24 | 2019-06-03 | 삼성전자주식회사 | Method and apparatus for data mapping in wireless communication system |
CN109905130B (en) | 2017-12-08 | 2021-12-17 | 大唐移动通信设备有限公司 | Method, device and equipment for encoding and decoding polarization code |
US10644835B1 (en) * | 2018-10-12 | 2020-05-05 | Samsung Electronics Co., Ltd. | System and method for interleaving distributed CRC in polar codes for early termination |
CN115208516A (en) * | 2022-07-11 | 2022-10-18 | 上海恩阶电子科技有限公司 | Data storage and verification method based on CRC (Cyclic redundancy check) code |
US20240204798A1 (en) * | 2022-12-14 | 2024-06-20 | Argo AI, LLC | System, Method, and Computer Program Product for End-To-End CRC Overhead Hiding |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5465260A (en) * | 1993-11-04 | 1995-11-07 | Cirrus Logic, Inc. | Dual purpose cyclic redundancy check |
KR100306282B1 (en) * | 1998-12-10 | 2001-11-02 | 윤종용 | Apparatus and for interleaving and deinterleaving frame date in communication system |
DE20023169U1 (en) * | 1999-05-19 | 2003-04-24 | Samsung Electronics Co., Ltd., Suwon, Kyonggi | Turbo interleaving |
PL207275B1 (en) * | 1999-07-08 | 2010-11-30 | Samsung Electronics Co Ltd | Apparatus and method for controlling a demultiplexer and a multiplexer used for rate matching in a mobile communication system |
CN1411630A (en) * | 2000-02-17 | 2003-04-16 | 模拟装置公司 | Method, apparatus and product for use in generating CRC and other remainder based codes |
GB2361781B (en) * | 2000-04-25 | 2004-12-29 | Ubinetics Ltd | Interleaving and de-interleaving of telecommunications signals |
JP3297668B2 (en) * | 2000-04-26 | 2002-07-02 | 松下電器産業株式会社 | Encoding / decoding device and encoding / decoding method |
JP3476807B2 (en) * | 2000-05-22 | 2003-12-10 | サムスン エレクトロニクス カンパニー リミテッド | Apparatus and method for transmitting data in data communication system using combined retransmission scheme |
JP3540287B2 (en) * | 2001-04-19 | 2004-07-07 | Necマイクロシステム株式会社 | Parallel processing circuit |
US6983166B2 (en) * | 2001-08-20 | 2006-01-03 | Qualcomm, Incorporated | Power control for a channel with multiple formats in a communication system |
US20030066004A1 (en) | 2001-09-28 | 2003-04-03 | Rudrapatna Ashok N. | Harq techniques for multiple antenna systems |
US7305043B2 (en) * | 2002-10-17 | 2007-12-04 | Ibiquity Digital Corporation | Method and apparatus for formatting signals for digital audio broadcasting transmission and reception |
CN1193294C (en) * | 2003-01-27 | 2005-03-16 | 西安电子科技大学 | Method for parallel computing code of CRC in multiple channels and multiple bits |
CN100454796C (en) * | 2003-03-18 | 2009-01-21 | 华为技术有限公司 | Lattice code modulation method and multiple users receiver |
US7706347B2 (en) * | 2003-05-15 | 2010-04-27 | Lg Electronics Inc. | Signal processing apparatus and method using multi-output mobile communication system |
KR101000388B1 (en) | 2003-05-15 | 2010-12-13 | 엘지전자 주식회사 | mobile communication system, and signaling method of the same |
JP2005086272A (en) * | 2003-09-04 | 2005-03-31 | Matsushita Electric Ind Co Ltd | Crc code arithmetic circuit, fcs generating circuit, and mac circuit |
KR100556908B1 (en) | 2003-10-30 | 2006-03-03 | 엘지전자 주식회사 | Harq in multi-level trellis encoded modulation system |
CN100413240C (en) * | 2004-06-18 | 2008-08-20 | 财团法人工业技术研究院 | Improved circulation redundance detection method for information length detection and error detection |
US7395492B2 (en) * | 2004-09-13 | 2008-07-01 | Lucent Technologies Inc. | Method and apparatus for detecting a packet error in a wireless communications system with minimum overhead using tail bits in turbo code |
KR100909543B1 (en) | 2004-12-01 | 2009-07-27 | 삼성전자주식회사 | Method and apparatus for transmitting / receiving control information in mobile communication system supporting packet data transmission |
CN101167285B (en) * | 2005-04-18 | 2013-01-16 | 三菱电机株式会社 | Wireless communication method |
US8265768B2 (en) * | 2005-08-30 | 2012-09-11 | Boston Scientific Neuromodulation Corporation | Telemetry protocol for ultra low error rates useable in implantable medical devices |
KR100690274B1 (en) * | 2005-09-12 | 2007-03-09 | 삼성전자주식회사 | Cyclic redundancy check device and communication system comprising the same for multi-channel serial communication |
CN1941686A (en) * | 2005-09-30 | 2007-04-04 | 西门子(中国)有限公司 | Data transmitting method and transmitter for radio telecommunication system |
KR100842583B1 (en) * | 2005-11-21 | 2008-07-01 | 삼성전자주식회사 | Method and apparatus for receiving data in a communication system |
KR100928261B1 (en) * | 2007-09-08 | 2009-11-24 | 엘지전자 주식회사 | Signal Division and RC Attachment Method for Non-Detection Error Reduction |
US7853857B2 (en) * | 2007-09-14 | 2010-12-14 | Motorola Mobility, Inc. | Multi-layer cyclic redundancy check code in wireless communication system |
US8555148B2 (en) * | 2007-09-18 | 2013-10-08 | Samsung Electronics Co., Ltd. | Methods and apparatus to generate multiple CRCs |
-
2008
- 2008-06-20 US US12/213,579 patent/US8555148B2/en active Active
- 2008-09-12 WO PCT/KR2008/005412 patent/WO2009038313A1/en active Application Filing
- 2008-09-12 CN CN201410452437.9A patent/CN104253669B/en active Active
- 2008-09-12 CA CA2699732A patent/CA2699732C/en active Active
- 2008-09-12 RU RU2010110135/08A patent/RU2441328C2/en active
- 2008-09-12 CN CN200880107083A patent/CN101803265A/en active Pending
- 2008-09-12 AU AU2008301483A patent/AU2008301483B2/en active Active
- 2008-09-12 KR KR1020107006000A patent/KR101600097B1/en active IP Right Grant
- 2008-09-12 CN CN201410452630.2A patent/CN104253616B/en active Active
- 2008-09-12 JP JP2010525747A patent/JP5349480B2/en active Active
-
2013
- 2013-06-18 JP JP2013127376A patent/JP2013219818A/en active Pending
-
2015
- 2015-01-08 JP JP2015002660A patent/JP2015084593A/en active Pending
- 2015-09-30 KR KR1020150138209A patent/KR101648870B1/en active IP Right Grant
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2739582C1 (en) * | 2017-08-07 | 2020-12-28 | Хуавей Текнолоджиз Ко., Лтд. | Encoding device and method |
US11121809B2 (en) | 2017-08-07 | 2021-09-14 | Huawei Technologies Co., Ltd. | Channel coding method and apparatus in wireless communications |
Also Published As
Publication number | Publication date |
---|---|
CN104253669B (en) | 2019-04-12 |
KR101600097B1 (en) | 2016-03-04 |
AU2008301483A1 (en) | 2009-03-26 |
CN104253616B (en) | 2019-01-04 |
US20090077456A1 (en) | 2009-03-19 |
KR101648870B1 (en) | 2016-08-30 |
JP2015084593A (en) | 2015-04-30 |
CN104253669A (en) | 2014-12-31 |
KR20150117631A (en) | 2015-10-20 |
JP2013219818A (en) | 2013-10-24 |
JP5349480B2 (en) | 2013-11-20 |
RU2010110135A (en) | 2011-09-27 |
CN101803265A (en) | 2010-08-11 |
WO2009038313A1 (en) | 2009-03-26 |
KR20100074143A (en) | 2010-07-01 |
AU2008301483B2 (en) | 2013-01-10 |
JP2010539840A (en) | 2010-12-16 |
CN104253616A (en) | 2014-12-31 |
CA2699732A1 (en) | 2009-03-26 |
CA2699732C (en) | 2014-10-21 |
US8555148B2 (en) | 2013-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2441328C2 (en) | Methods and apparatus for generating multiple cyclic redundancy code (crc) values | |
EP2181505B1 (en) | Multi-layer cyclic redundancy check code in wireless communication system | |
CN105306165B (en) | Data transmission method for uplink and device | |
US7577899B2 (en) | Cyclic redundancy check (CRC) based error correction method and device | |
WO1998013940A1 (en) | Error detection scheme for arq systems | |
CN113938248B (en) | Data message error correction method and data message error correction device | |
JP3440092B1 (en) | Error correction decoding device and error correction decoding method | |
KR20100063032A (en) | Data transmission method, data reception method, mobile terminal, and radio communication system | |
EP2043269A2 (en) | Methods and apparatus to generate multiple cyclic redundancy checks (CRCS) | |
KR100305353B1 (en) | method for performance analysis of adaptive hybrid ARQ using RCPTC, RCPHCCC and RCPSCCC | |
CN102075285B (en) | Rate matching method and device | |
Khan et al. | Pi et a].(45) Date of Patent: Oct. 8, 2013 |