RU2212103C2 - Turbo-interleaving device and method - Google Patents
Turbo-interleaving device and methodInfo
- Publication number
- RU2212103C2 RU2212103C2 RU2001101916A RU2001101916A RU2212103C2 RU 2212103 C2 RU2212103 C2 RU 2212103C2 RU 2001101916 A RU2001101916 A RU 2001101916A RU 2001101916 A RU2001101916 A RU 2001101916A RU 2212103 C2 RU2212103 C2 RU 2212103C2
- Authority
- RU
- Russia
- Prior art keywords
- information bits
- interleaver
- last
- input
- frame
- Prior art date
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
Description
Область техники
Настоящее изобретение относится в целом к турбокодеру, используемому в системах радиосвязи (в том числе спутниковых системах, цифровых сетях с интеграцией служб (ISDN), цифровых сотовых системах, широкополосных системах множественного доступа с кодовым разделением каналов (Ш-МДКР) и системах IMT-2000) и, в частности, к внутреннему перемежителю турбокодера.Technical field
The present invention relates generally to a turbo encoder used in radio communication systems (including satellite systems, service integration digital networks (ISDN), digital cellular systems, code division multiple access (W-CDMA) broadband systems and IMT-2000 systems ) and, in particular, to the internal interleaver of the turbo encoder.
Предшествующий уровень техники
В общем случае перемежитель, используемый в турбокодере, рандомизирует адрес входного информационного слова и улучшает свойство расстояния кодового слова. В частности, было принято, что турбокод будет использоваться в дополнительном канале (или канале передачи данных) эфирных интерфейсов стандартов IMT-2000 (или в МДКР-2000) и IS-95C и в канале данных UMTS (универсальной системы мобильной связи), предложенной Европейским институтом стандартов связи (ETSI). Таким образом, требуется способ реализации перемежителя для этих целей. Кроме того, изобретение относится к коду исправления ошибок, который сильно влияет на улучшение работы существующих и перспективных цифровых систем связи.State of the art
In the general case, the interleaver used in the turbo encoder randomizes the address of the input information word and improves the distance property of the code word. In particular, it was decided that the turbo code will be used in an additional channel (or data channel) of the air interfaces of IMT-2000 standards (or in CDMA-2000) and IS-95C and in the data channel UMTS (universal mobile communication system) proposed by the European Institute of Communications Standards (ETSI). Thus, a method for implementing an interleaver for these purposes is required. In addition, the invention relates to a code for error correction, which greatly affects the improvement of the existing and future digital communication systems.
Для известного внутреннего перемежителя для турбокодера (далее называемого турбоперемежителем) были предложены различные перемежители, такие как ПШ (псевдошумовой) случайный перемежитель, случайный перемежитель, блоковый перемежитель, нелинейный перемежитель и S-случайный перемежитель. Тем не менее, до сих пор такие перемежители представляют собой просто алгоритмы, разработанные для улучшения их характеристик в смысле научных изысканий, а не реализации. Поэтому при воплощении данной системы следует учитывать сложность реализации аппаратного обеспечения. Ниже описаны свойства обычного перемежителя для турбокодера и связанные с ними проблемы. For the known internal interleaver for a turbo encoder (hereinafter referred to as turbo interleaver), various interleavers have been proposed, such as PN (pseudo noise) random interleaver, random interleaver, block interleaver, non-linear interleaver and S-random interleaver. However, until now, such interleavers are simply algorithms designed to improve their characteristics in the sense of scientific research, and not implementation. Therefore, when implementing this system, the complexity of implementing hardware should be considered. The following describes the properties of a conventional interleaver for a turbo encoder and related problems.
Работа турбокодера зависит от его внутреннего перемежителя. В целом увеличение размера входного кадра (т.е. числа информационных битов, заключенных в одном кадре) увеличивает эффективность турбокодера. Однако увеличение размеров перемежителя вызывает возрастание вычислений в геометрической прогрессии. Поэтому в общем случае невозможно реализовать перемежитель для кадра большого размера. The operation of a turbo encoder depends on its internal interleaver. In general, increasing the size of the input frame (i.e., the number of information bits enclosed in one frame) increases the efficiency of the turbo encoder. However, an increase in interleaver sizes causes an increase in computations exponentially. Therefore, in the General case, it is impossible to implement an interleaver for a large frame size.
Поэтому в общем случае перемежители реализуются путем определения условий, удовлетворяющих нескольким заданным критериям. Это следующие критерии. Therefore, in the general case, interleavers are implemented by defining conditions that satisfy several specified criteria. These are the following criteria.
Свойство расстояния: между смежными символами кодового слова должно поддерживаться определенное расстояние. Это то же самое, что свойство расстояния кодового слова сверточного кода, и в качестве такого критерия используется минимальное свободное расстояние, являющееся значением пути кодового слова или последовательности кодового слова с минимальным весом Хэмминга из последовательностей кодовых символов (или путей кодового слова) на решетке. В общем случае предпочтительно, чтобы перемежитель имел по возможности большее свободное расстояние. Distance property: a certain distance must be maintained between adjacent characters of the codeword. This is the same as the distance property of the codeword of the convolutional code, and the minimum free distance is used as such a criterion, which is the value of the codeword path or codeword sequence with the minimum Hamming weight from the sequences of code symbols (or codeword paths) on the lattice. In general, it is preferred that the interleaver has as much free distance as possible.
Свойство случайности: коэффициент корреляции между символами выходного слова после перемежения должен быть гораздо ниже, чем коэффициент корреляции между символами исходного входного слова до перемежения. Это означает, что рандомизация символов выходного слова должна быть полностью выполнена. Это оказывает непосредственное влияние на качество внешней информации, вырабатываемой при непрерывном декодировании. Random property: the correlation coefficient between the characters of the output word after interleaving should be much lower than the correlation coefficient between the characters of the original input word before interleaving. This means that the randomization of the characters of the output word must be fully performed. This has a direct impact on the quality of external information generated by continuous decoding.
Хотя вышеприведенные критерии применимы к обобщенному турбоперемежителю, сложно ясно анализировать эти свойства по мере увеличения размера перемежителя. Although the above criteria apply to a generalized turbo interleaver, it is difficult to clearly analyze these properties as the interleaver size increases.
Кроме того, другая проблема, возникающая при проектировании турбоперемежителя, состоит в том, что минимальное свободное расстояние турбокода варьируется в соответствии с типом входного кодового слова. То есть, когда входное информационное слово имеет особую комбинацию последовательности, определяемую как критическая комбинация информационной последовательности (ККИП), свободное расстояние символов выходного кода, выработанных турбокодером, имеет очень малую величину. Если входное информационное слово имеет вес Хэмминга, равный 2, ККИП возникает, когда входное информационное слово имеет два информационных бита со значением "1", и может возникать также тогда, когда входное информационное слово имеет три или более информационных битов со значением "1". Однако в большинстве случаев, когда входное информационное слово имеет два информационных бита со значением "1", формируется минимальное свободное расстояние, и большинство ошибочных событий происходит в этом состоянии. Поэтому при проектировании турбоперемежителя обычно проводится анализ случая, при котором входное информационное слово имеет вес Хэмминга, равный 2. ККИП существует по той причине, что турбокодер обычно использует кодеры РССК (Рекурсивных Систематических Сверточных Кодов) в качестве компонентных кодеров, показанных на фиг.1 (описывается ниже). Для улучшения работы турбокодера, в качестве полинома обратной связи (gf(x) на фиг.1) должен использоваться примитивный полином из порождающих полиномов для компонентного кодера. Поэтому, если количество блоков памяти кодера РССК равно m, последовательность обратной связи, выработанная полиномом обратной связи, непрерывно повторяет одну и ту же комбинацию с периодом 2m-1. Поэтому, если входное информационное слово "1" принято в момент, соответствующий этому периоду, над одинаковыми информационными битами производится операция "Исключающее ИЛИ", так что состояние кодера РССК вследствие этого становится полным нулем, тем самым в качестве выходных символов вырабатываются все нули. Это означает, что вес Хэмминга для кодового слова, выработанного кодером РССК, имеет после этого события постоянное значение. То есть, свободное расстояние турбокода сохраняется по прошествии этого времени, а ККИП становится главной причиной уменьшения свободного расстояния турбокодера, в то время как желательно большее свободное расстояние, как отмечено выше.In addition, another problem encountered in designing a turbo interleaver is that the minimum free distance of the turbo code varies according to the type of input codeword. That is, when the input information word has a special sequence combination, defined as the critical combination of the information sequence (KKIP), the free distance of the symbols of the output code generated by the turbo encoder is very small. If the input information word has a Hamming weight of 2, the CKIP occurs when the input information word has two information bits with a value of “1”, and can also occur when the input information word has three or more information bits with a value of “1”. However, in most cases, when the input information word has two information bits with the value "1", the minimum free distance is formed, and most error events occur in this state. Therefore, when designing a turbo interleaver, an analysis is usually carried out of the case in which the input information word has a Hamming weight of 2. The KKIP exists because the turbo encoder usually uses RCCC (Recursive Systematic Convolutional Codes) encoders as component encoders shown in Fig. 1 ( described below). To improve the operation of the turbo encoder, as a feedback polynomial (gf (x) in Fig. 1), a primitive polynomial from the generating polynomials for the component encoder should be used. Therefore, if the number of memory blocks of the RCCC encoder is m, the feedback sequence generated by the feedback polynomial continuously repeats the same combination with a period of 2 m -1. Therefore, if the input information word “1” is received at the moment corresponding to this period, the operation “Exclusive OR” is performed on the same information bits, so that the state of the RCCC encoder therefore becomes a complete zero, thereby generating all zeros as output symbols. This means that the Hamming weight for the codeword generated by the RCCC encoder has a constant value after this event. That is, the free distance of the turbo code is maintained after this time, and the KKIP becomes the main reason for reducing the free distance of the turbo encoder, while a larger free distance is desirable, as noted above.
В этом случае (в известном турбоперемежителе) для увеличения свободного расстояния турбоперемежитель случайным образом рассредоточивает входное информационное слово ККИП для предотвращения уменьшения свободного расстояния в выходном символе другого компонентного кодера РССК. In this case (in the known turbo interleaver), to increase the free distance, the turbo interleaver randomly disperses the input information word KKIP to prevent a decrease in the free distance in the output symbol of another RCCC component encoder.
Установленные выше свойства являются фундаментальными характеристиками известных турбоперемежителей. Тем не менее, для ККИП общепринято, чтобы информационное слово имело минимальный вес Хэмминга, если входное информационное слово имеет вес Хэмминга, равный 2. Другими словами, тот факт, что ККИП может быть выработана, даже если входное информационное слово имеет вес Хэмминга, равный 1 (т.е., если входное информационное слово имеет один информационный бит со значением "1"), игнорировалось, когда вводимое в турбокодер информационное слово имело вид блока, состоящего из кадров. The properties established above are fundamental characteristics of known turbo interleavers. However, it is generally accepted by the CCIP that the information word has a minimum Hamming weight if the input information word has a Hamming weight of 2. In other words, the fact that the CCIP can be generated even if the input information word has a Hamming weight of 1 (ie, if the input information word has one information bit with the value "1"), it was ignored when the information word entered into the turbo encoder had the form of a block consisting of frames.
К примеру, первичный перемежитель (ПП), представляющий рабочую модель перемежителя турбокода, определенного нынешним стандартом UTMS, имеет эти проблемы, тем самым имея ухудшенное свойство свободного расстояния. То есть алгоритм реализации модели ПП турбоперемежителя содержит три стадии, вторая из которых, играющая наиболее важную роль, выполняет случайную перестановку информационных битов соответствующих групп.Эта вторая стадия разделена на три случая - Случай А, Случай Б и Случай В, причем Случай Б всегда включает тот случай, при котором свободное расстояние уменьшается из-за события, при котором входное информационное слово имеет вес Хэмминга, равный 1. Вдобавок, даже Случай В содержит возможность того, что такое событие произойдет. Подробно эти проблемы будут описаны ниже со ссылкой на ПП. For example, a primary interleaver (PP) representing a working model of a turbo code interleaver defined by the current UTMS standard has these problems, thereby having a degraded free distance property. That is, the algorithm for implementing the turbo interleaver PP model contains three stages, the second of which, playing the most important role, randomly permutes the information bits of the corresponding groups. This second stage is divided into three cases - Case A, Case B and Case C, and Case B always includes the case in which the free distance decreases due to an event in which the input information word has a Hamming weight of 1. In addition, even Case B contains the possibility that such an event will occur. Details of these problems will be described below with reference to the PP.
В заключение, когда необходимы различные размеры перемежителя, а сложность реализации аппаратного обеспечения ограничена в системе IMT-2000 или UMTS, турбоперемежитель должен быть сконструирован так, чтобы гарантировать оптимальную характеристику перемежителя, учитывая эти ограничения. То есть требуемый перемежитель должен обеспечить одинаковую характеристику для различных размеров перемежителя, удовлетворяя при этом установленным выше свойствам. Недавно было предложено несколько типов перемежителей для турбоперемежителя ПКСК (параллельных каскадных сверточных кодов), а турбоперемежитель ЛКП (линейной конгруэнтной последовательности) был условно определен в качестве турбоперемежителя в спецификациях стандартов IMT-2000 (или МДКР-2000) и IS-95C. Однако большинство таких турбоперемежителей имеет проблемы ККИП с весом Хэмминга, равным 1, а подробности воплощения этих турбоперемежителей до сих пор не определены. Поэтому настоящее изобретение предлагает решение проблем турбоперемежителя и новый способ реализации турбоперемежителя. Кроме того, изобретение представляет ПП-перемежитель, являющийся рабочим вариантом турбоперемежителя UMTS, и предлагает решение этой проблемы перемежителя. In conclusion, when different sizes of the interleaver are needed, and the complexity of the hardware implementation is limited in the IMT-2000 or UMTS system, the turbo interleaver must be designed to guarantee optimal interleaver performance, given these limitations. That is, the required interleaver should provide the same characteristic for different sizes of the interleaver, while satisfying the properties set above. Recently, several types of interleavers were proposed for the PKSK turbo interleaver (parallel cascade convolutional codes), and the LKP (linear congruent sequence) turbo interleaver was conditionally defined as a turbo interleaver in the specifications of the IMT-2000 (or MDKR-2000) and IS-95C standards. However, most of these turbo-interleavers have problems with a KKIP with a Hamming weight of 1, and the details of the implementation of these turbo-interleavers have not yet been determined. Therefore, the present invention provides a solution to the problems of a turbo interleaver and a new method for implementing a turbo interleaver. In addition, the invention provides a PP interleaver, which is a working variant of the UMTS turbo interleaver, and provides a solution to this interleaver problem.
Итак, известное из предшествующего уровня техники имеет следующие недостатки. So, known from the prior art has the following disadvantages.
(1) Турбоперемежитель разработан для бесконечного размера кадра на основе ККИП, для которого входное информационное слово имеет вес Хэмминга, равный 2, без учета того факта, что определение ККИП на основании типа входного информационного слова ограничено размером кадра. Однако в реальной системе кадр имеет конечный размер, что вызывает уменьшение свободного расстояния турбокода. (1) The turbo interleaver is designed for an infinite frame size based on the CCFI, for which the input information word has a Hamming weight of 2, without taking into account the fact that the definition of the CCFI based on the type of input information word is limited by the frame size. However, in a real system, the frame has a finite size, which causes a decrease in the free distance of the turbo code.
(2) При разработке существующего турбоперемежителя не был учтен тот факт, что входное информационное слово может иметь вес Хэмминга, равный 1. Другими словами, для конечного размера кадра правило построения турбоперемежителя должно определяться с учетом того факта, что минимальное свободное расстояние, вырабатываемое в турбоперемежителе ПКСК, определяется ККИП с весом Хэмминга, равным 1. Однако для существующих турбоперемежителей это учитывалось не полностью. (2) When designing an existing turbo interleaver, the fact that the input information word may have a Hamming weight of 1 was not taken into account. In other words, for a finite frame size, the rule for constructing a turbo interleaver should be determined taking into account the fact that the minimum free distance generated in the turbo interleaver PKSK is determined by the KKIP with a Hamming weight of 1. However, for existing turbo interleavers this was not fully taken into account.
(3) Первичный перемежитель (ПП), рассматриваемый как рабочее представление перемежителя турбокода, определенного спецификацией UMTS, имеет такие проблемы, а тем самым и ухудшенную характеристику свободного расстояния. (3) The primary interleaver (PP), regarded as a working representation of a turbo code interleaver defined by the UMTS specification, has such problems, and thereby a degraded free distance characteristic.
Сущность изобретения
Следовательно, задачей настоящего изобретения является обеспечение перемежающего устройства и способа анализа свойств турбоперемежителя и свойства критической комбинации информационной последовательности (ККИП) для улучшения работы турбоперемежителя.SUMMARY OF THE INVENTION
Therefore, the present invention is the provision of an interleaving device and method for analyzing the properties of the turbo interleaver and the properties of the critical combination of information sequence (KKIP) to improve the operation of the interleaver.
Еще одной задачей настоящего изобретения является обеспечение перемежающего устройства и способа улучшения реализации свободного расстояния турбокода для случая, при котором входное информационное слово имеет вес Хэмминга, равный 1, когда вводимое в перемежитель информационное слово имеет блоковый тип, состоящий из кадров. Another objective of the present invention is the provision of an interleaving device and a method for improving the implementation of the free distance of the turbo code for the case in which the input information word has a Hamming weight of 1, when the input word into the interleaver has a block type consisting of frames.
Также задачей настоящего изобретения является создание перемежающего устройства и способа решения той проблемы, что свободное расстояние уменьшается, когда входное информационное слово имеет вес Хэмминга, равный 1, в первичном перемежителе (ПП), который является турбоперемежителем, описанным в спецификации UMTS. It is also an object of the present invention to provide an interleaving device and method for solving the problem that the free distance decreases when the input information word has a Hamming weight of 1 in the primary interleaver (PP), which is the turbo interleaver described in the UMTS specification.
Для решения вышеупомянутых задач создан способ двумерного перемежения, включающий в себя разделение кадра входящих информационных битов на множество групп и последовательное сохранение разделенных групп в памяти; перестановку информационных битов групп в соответствии с заданным правилом и сдвиг информационного бита, находящегося в последней позиции последней группы в позицию, предшествующую последней позиции; и выбор групп в соответствии с определенным порядком, и выбор одного из информационных битов в выбранной группе. To solve the above problems, a two-dimensional interleaving method has been created, which includes dividing the frame of the incoming information bits into many groups and sequentially storing the divided groups in memory; permutation of the information bits of the groups in accordance with a given rule and the shift of the information bit located in the last position of the last group to the position preceding the last position; and selecting groups in accordance with a specific order, and selecting one of the information bits in the selected group.
Краткое описание чертежей
Вышеупомянутые и прочие задачи, признаки и преимущества настоящего изобретения поясняются в последующем подробном описании, иллюстрируемом чертежами, на которых представлено следующее:
Фиг.1 - схема, иллюстрирующая обобщенный параллельный турбокодер;
Фиг.2 - схема, иллюстрирующая обобщенный перемежитель;
Фиг.3 - схема, иллюстрирующая обобщенный обращенный перемежитель;
Фиг. 4 - схема, иллюстрирующая способ генерирования критической комбинации информационной последовательности (ККИП) в турбоперемежителе;
Фиг. 5 - схема, иллюстрирующая еще один способ генерирования ККИП в турбоперемежителе;
Фиг. 6 - схема, иллюстрирующая способ решения проблемы, возникающей при генерировании ККИП по фиг.4;
Фиг. 7 - схема, иллюстрирующая способ решения проблемы, возникающей при генерировании ККИП по фиг.5;
Фиг. 8 - схема, иллюстрирующая еще один способ решения проблемы, возникающей при генерировании ККИП в турбоперемежителе;
Фиг.9 - схема, иллюстрирующая способ генерирования ККИП в двумерном турбоперемежителе;
Фиг. 10 - схема, иллюстрирующая способ решения проблемы, возникающей при генерировании ККИП по фиг.7;
Фиг. 11 - функциональная схема, иллюстрирующая перемежающее устройство для подавления ККИП в соответствии с выполнением по настоящему изобретению;
Фиг. 12 - блок-схема алгоритма, объясняющая процесс перемежения модифицированного ПП (первичного перемежителя), соответствующего варианту выполнения настоящего изобретения.Brief Description of the Drawings
The above and other objects, features and advantages of the present invention are explained in the following detailed description, illustrated by the drawings, in which the following is presented:
Figure 1 is a diagram illustrating a generalized parallel turbo encoder;
Figure 2 is a diagram illustrating a generalized interleaver;
Figure 3 is a diagram illustrating a generalized inverted interleaver;
FIG. 4 is a diagram illustrating a method for generating a critical combination of an information sequence (KKIP) in a turbo interleaver;
FIG. 5 is a diagram illustrating yet another method for generating an IKP in a turbo interleaver;
FIG. 6 is a diagram illustrating a method for solving a problem that occurs when generating an IPCC of FIG. 4;
FIG. 7 is a diagram illustrating a method for solving a problem that occurs when generating an IPCC of FIG. 5;
FIG. 8 is a diagram illustrating another method for solving the problem that occurs when generating a control and control unit in a turbo interleaver;
FIG. 9 is a diagram illustrating a method for generating a PSC in a two-dimensional turbo interleaver; FIG.
FIG. 10 is a diagram illustrating a method for solving a problem that occurs when generating an IPCC of FIG. 7;
FIG. 11 is a functional block diagram illustrating an interleaver for suppressing an IKP according to an embodiment of the present invention;
FIG. 12 is a flowchart for explaining an interleaving process of a modified PP (primary interleaver) according to an embodiment of the present invention.
Подробное описание предпочтительного варианта выполнения
Предпочтительный вариант выполнения настоящего изобретения описан ниже со ссылками на чертежи. В последующем описании подробно не описываются хорошо известные функции и конструкции, чтобы не затенять сущность изобретения ненужными деталями.Detailed Description of a Preferred Embodiment
A preferred embodiment of the present invention is described below with reference to the drawings. In the following description, well-known functions and constructions are not described in detail, so as not to obscure the invention with unnecessary details.
Прежде чем описывать изобретение, представим проблемы, возникающие, когда входящее информационное слово, которое является одним из критериев проектирования, используемых в существующих турбоперемежителе/обращенном перемежителе, обрабатывается на основе кадрового блока, а затем проанализируем воздействие, которое имеет ККИП с весом Хэмминга, равным 1, на вес Хэмминга символов выходного кода. Затем в описании будет представлен способ решения этих проблем и проверка различий в работе на основе анализа минимального свободного расстояния. Before describing the invention, imagine the problems that arise when an incoming information word, which is one of the design criteria used in existing turbo interleaver / deinterleaver, is processed on the basis of a frame block, and then we analyze the effect that the control panel has with a Hamming weight of 1 , by weight of the Hamming characters of the output code. Then in the description will be presented a method for solving these problems and checking differences in operation based on the analysis of the minimum free distance.
Фиг.1 показывает структуру обобщенного параллельного турбокодера, который подробно раскрыт в патенте США 5446474, выданном 29 августа 1995, который включен сюда посредством ссылки. Figure 1 shows the structure of a generalized parallel turbo encoder, which is described in detail in US patent 5446474, issued August 29, 1995, which is incorporated here by reference.
Согласно фиг.1 турбокодер содержит первый компонентный кодер 111 для кодирования данных входного кадра, перемежитель 112 для перемежения данных входного кадра и второй компонентный кодер 113 для кодирования выхода перемежителя 112. Известный кодер РССК (рекурсивных систематических сверточных кодов) обычно используется в качестве первого и второго компонентных кодеров 111 и 113. Ниже первый компонентный РССК-кодер 111 будет обозначаться как РССК1, а второй компонентный РССК-кодер 113 будет обозначаться как РССК2. Далее, перемежитель 112 имеет тот же размер, что и кадр входного бита информации, и перестраивает последовательность битов информации, подаваемых во второй компонентный кодер 113 для уменьшения корреляции между этими битами информации. 1, a turbo encoder comprises a
Фиг. 2 и 3 показывают основные структуры обобщенного перемежителя и обращенного перемежителя соответственно. FIG. 2 and 3 show the basic structures of the generalized interleaver and the inverted interleaver, respectively.
Со ссылками на фиг.2 ниже описан перемежитель для перемеженного вывода данных кадра из первого компонентного кодера. Адресный генератор 211 вырабатывает адрес считывания для изменения последовательности входных битов данных в соответствии с размером L данных входного кадра и входным таймером и снабжает память 212 перемежителя выработанным адресом считывания. Память 212 перемежителя последовательно сохраняет входные данные в режиме записи и выводит сохраненные данные в соответствии с адресом считывания, обеспечиваемым адресным генератором 211, в режиме чтения. Счетчик 213 ведет отсчет входного таймера и подает значение таймера в память 212 перемежителя в качестве адреса записи. Как описано выше, перемежитель последовательно сохраняет входные данные в памяти 212 перемежителя в режиме записи и выводит данные, сохраненные в памяти 212 перемежителя, в соответствии с адресом считывания, подаваемым из адресного генератора 211 в режиме чтения. Альтернативно возможно также изменять последовательность входных битов данных перед их сохранением в памяти перемежителя в режиме записи, а затем считывать сохраненные данные в режиме чтения. With reference to FIG. 2, an interleaver for interleaving output of frame data from a first component encoder is described. The
Со ссылками на фиг.3 описан обращенный перемежитель. Адресный генератор 311 вырабатывает адрес записи для восстановления последовательности входных битов данных в начальную последовательность в соответствии с размером L данных входного кадра и входным таймером и снабжает память 312 обращенного перемежителя выработанным адресом записи. Память 312 обращенного перемежителя сохраняет входные данные в соответствии с адресом записи, подаваемым из адресного генератора 311, в режиме записи, а затем выводит сохраненные данные в режиме чтения. Счетчик 313 ведет отсчет входного таймера и подает значение таймера в память 312 обращенного перемежителя в качестве адреса считывания. Как описано выше, обращенный перемежитель имеет ту же структуру, что и перемежитель, но его действие обратно действию перемежителя. Обращенный перемежитель отличается от перемежителя главным образом тем, что входные данные имеют различные последовательности как в режиме считывания, так и в режиме записи. Поэтому для удобства ниже приводится только описание перемежителя. With reference to FIG. 3, a deinterleaver is described. The
В принципе, поскольку турбокод является линейным блоковым кодом, новое информационное слово, получаемое путем добавления ненулевого информационного слова к входному информационному слову, имеет то же самое свойство распределения кодового слова. Поэтому, даже хотя это свойство развито на основании информационного слова из всех нулей, будет получена та же характеристика, что и характеристика, определенная с использованием ненулевого информационного слова. Таким образом, нижеследующее описание относится к случаю, когда входное информационное слово является кодовым словом из всех нулей. То есть действие турбокода будет проанализировано в предположении, что входное информационное слово имеет только нулевые биты, и только заданный информационный бит является "1". In principle, since the turbo code is a linear block code, the new information word obtained by adding a nonzero information word to the input information word has the same codeword distribution property. Therefore, even though this property is developed on the basis of an information word from all zeros, the same characteristic will be obtained as a characteristic determined using a non-zero information word. Thus, the following description refers to the case where the input information word is a code word of all zeros. That is, the action of the turbo code will be analyzed under the assumption that the input information word has only zero bits, and only the specified information bit is "1".
Для улучшения характеристики турбокодера может использоваться примитивный полином в качестве полинома обратной связи из порождающего полинома для компонентного кодера. Полином обратной связи задается путем задания отводов для обратной связи в компонентных РССК-кодерах 111, 113 по фиг.1 в полиноме, а полином обратной связи определяется как gf(x). To improve the performance of the turbo encoder, a primitive polynomial can be used as the feedback polynomial from the generating polynomial for the component encoder. The feedback polynomial is defined by setting the taps for feedback in the
Если рассматривать фиг.1, gf(x)=1+х2+х3. То есть наивысший порядок показывает глубину памяти, а самое правое слагаемое определяет, является ли коэффициент х3 в gf(x) нулем или единицей. Следовательно, если количество блоков памяти РССК-кодера равно m, последовательность обратной связи, выработанная полиномом обратной связи, постоянно повторяет одну и ту же комбинацию с периодом 2m-1. Таким образом, если входное информационное слово "1" принимается в момент, соответствующий этому периоду (например, для m=3, если принято информационное слово "10000001..."), над одинаковыми информационными битами производится операция "Исключающее ИЛИ", так что состояние РССК-кодера вследствие этого становится полностью нулевым, тем самым генерируя в качестве выходных символов все нули. Это означает, что вес Хэмминга кодового слова, выработанного РССК-кодером, имеет после этого события постоянное значение "1". То есть это значит, что свободное расстояние турбокода после этого сохраняется, а ККИП становится главной причиной уменьшения свободного расстояния турбокодера.If we consider figure 1, gf (x) = 1 + x 2 + x 3 . That is, the highest order indicates the depth of the memory, and the rightmost term determines whether the coefficient x 3 in gf (x) is zero or one. Therefore, if the number of memory blocks of the RCCC encoder is m, the feedback sequence generated by the feedback polynomial constantly repeats the same combination with a period of 2 m -1. Thus, if the input information word "1" is received at the moment corresponding to this period (for example, for m = 3, if the information word "10000001 ..." is accepted), the operation "Exclusive OR" is performed on the same information bits, so that the state of the RCCC encoder therefore becomes completely zero, thereby generating all zeros as output symbols. This means that the Hamming weight of the codeword generated by the RCCC encoder has a constant value of “1” after this event. That is, this means that the free distance of the turbocode after this is preserved, and the KKIP becomes the main reason for reducing the free distance of the turbo encoder.
В этом случае для увеличения свободного расстояния турбоперемежитель случайным образом рассредоточивает входное информационное слово ККИП для предотвращения уменьшения свободного расстояния в выходном символе другого компонентного РССК-кодера. Приведенная в конце описания Таблица 1 показывает последовательность обратной связи, выработанную из gf(x)=1+х2+-х3. В Таблице 1 X(t) обозначает входной информационный бит в момент t входного информационного слова; m(t), m(t-1) и m(t-2) обозначают три состояния памяти РССК-кодера соответственно. Поскольку количество блоков памяти равно 3, период равен 23-1=7.In this case, to increase the free distance, the turbo interleaver randomly disperses the input information word KKIP to prevent a decrease in the free distance in the output symbol of another component RCCC encoder. Table 1 at the end of the description shows the feedback sequence generated from gf (x) = 1 + x 2 + -x 3 . In Table 1, X (t) denotes the input information bit at time t of the input information word; m (t), m (t-1) and m (t-2) denote the three memory states of the RCCC encoder, respectively. Since the number of memory blocks is 3, the period is 2 3 -1 = 7.
Из Таблицы 1 следует, что если X(t)=1 в момент t=7, то m(t), m(t-1) и m(t-2) вследствие этого все становятся нулевыми состояниями. Следовательно, вес Хэмминга следующих выходных символов всегда становится равным нулю. В этом случае, если турбоперемежитель снабжает РССК2 входной информационной последовательностью "10000001000. . . ", как это и происходит, вес Хэмминга выходных символов в последующий момент t=7 не изменится после этого и в РССК2, использующем тот же полином обратной связи, по той же причине. Это вызывает уменьшение свободного расстояния всех выходных символов турбокодера. Для того, чтобы предотвратить это, турбоперемежитель изменяет начальную входную информационную последовательность "10000001000..." во входную информационную последовательность с другой структурой (например, изменяет положение информационного бита "1" так: 110000000...) и подает результирующую последовательность в РССК2. Поэтому, даже хотя увеличение веса Хэмминга останавливается в РССК1, вес Хэмминга постоянно увеличивается в РССК2 так, что общее свободное расстояние турбокодера увеличивается. Это происходит потому, что полином обратной связи, имеющий тип фильтра с бесконечной импульсной характеристикой (БИХ), постоянно вырабатывает бесконечный выходной символ "1", даже для одного информационного символа "1". Уравнение 1, приводимое ниже, показывает зависимость между РССК1 и РССК2 в терминах веса Хэмминга или свободного расстояния турбокодера. From Table 1 it follows that if X (t) = 1 at the time t = 7, then m (t), m (t-1) and m (t-2) as a result, all become zero states. Therefore, the Hamming weight of the following output symbols always becomes zero. In this case, if the turbo interleaver provides RCCC2 with the input information sequence “10000001000....”, As it happens, the Hamming weight of the output symbols at the next moment t = 7 will not change after that in the RCCC2 using the same feedback polynomial, same reason. This causes a decrease in the free distance of all output symbols of the turbo encoder. In order to prevent this, the turbo interleaver changes the initial input information sequence "10000001000 ..." into the input information sequence with a different structure (for example, changes the position of the information bit "1" like this: 110000000 ...) and feeds the resulting sequence to RCCC2. Therefore, even though the increase in Hamming weight stops in RCCC1, the Hamming weight is constantly increasing in RCCC2 so that the total free distance of the turbo encoder increases. This is because a feedback polynomial having a filter type with an infinite impulse response (IIR) continuously generates an infinite output symbol "1", even for a single information symbol "1".
Уравнение (1):
ВХ (выходная кодовая последовательность)=ВХ(кодовой последовательности РССК1) + ВХ(кодовой последовательности РССК2), где ВХ - вес Хэмминга.Equation (1):
ВХ (output code sequence) = ВХ (РССК1 code sequence) + ВХ (РССК2 code sequence), where ВХ is the Hamming weight.
Из Уравнения (1) следует, что баланс веса Хэмминга между РССК1 и РССК2 очень важен. В частности, минимальное свободное расстояние турбокода вырабатывается для минимального веса Хэмминга входного информационного слова, когда в расчет берется характеристика БИХ (бесконечной импульсной характеристики) РССК-кодера. В принципе, минимальное свободное расстояние обеспечивается, когда входное информационное слово имеет вес Хэмминга, равный 2, как упоминалось ранее. From Equation (1) it follows that the balance of the Hamming weight between RCCC1 and RCCC2 is very important. In particular, the minimum free distance of the turbo code is generated for the minimum Hamming weight of the input information word when the IIR (infinite impulse response) characteristic of the RCCC encoder is taken into account. In principle, a minimum free distance is provided when the input information word has a Hamming weight of 2, as mentioned earlier.
Однако, как описано выше, минимальное свободное расстояние возникает, когда входное информационное слово имеет вес Хэмминга, равный 3, 4, 5,..., а также, когда входное информационное слово имеет вес Хэмминга, равный 2. Это происходит, когда входное информационное слово принимается на основе кадровых блоков, как в следующем примере. However, as described above, the minimum free distance occurs when the input information word has a Hamming weight of 3, 4, 5, ..., and also when the input information word has a Hamming weight of 2. This happens when the input information the word is adopted based on frame blocks, as in the following example.
Например, когда только информационный бит, расположенный в последней позиции входного информационного слова, т.е. последней позиции кадра, равен "1", а все остальные информационные биты равны 0, вес Хэмминга входного информационного слова становится равным 1. В этом случае, количество символов "1", выводимых из РССК1, становится очень малым, поскольку более нет входного информационного слова. Разумеется, когда используются нулевые концевые биты, существует два символа, но они используются независимо, а не подвергаются турбоперемежению. Поэтому здесь предполагается, что вес слегка увеличивается. Поскольку прибавляется постоянный вес, он исключается из анализа перемежителя. В этом случае отметим из Уравнения (1), что РССК2 должен вырабатывать большое количество выходных символов "1" для увеличения общего свободного расстояния. For example, when only the information bit located in the last position of the input information word, i.e. the last position of the frame is “1”, and all other information bits are 0, the Hamming weight of the input information word becomes 1. In this case, the number of characters “1” output from RCCC1 becomes very small, since there is no more input information word . Of course, when zero end bits are used, there are two characters, but they are used independently and are not turbo-interleaved. Therefore, it is assumed here that the weight is slightly increased. Since constant weight is added, it is excluded from interleaver analysis. In this case, we note from Equation (1) that RCCC2 must generate a large number of output symbols "1" to increase the total free distance.
Со ссылками на фиг.4-10 ниже приведено сравнительное описание с учетом проблем предшествующего уровня техники и решений этих проблем. With reference to FIGS. 4-10, a comparative description is given taking into account the problems of the prior art and the solutions to these problems.
На фиг.4-10 заштрихованные участки показывают позиции, в которых входящие информационные биты имеют значение "1", a остальные участки обозначают позиции, в которых входящие информационные биты имеют значение "0". 4-10, the shaded sections indicate positions at which the incoming information bits have a value of "1", and the remaining sections indicate positions at which the incoming information bits have a value of "0".
Если, как показано на фиг.4, турбоперемежитель сдвигает (или переставляет) позицию входного информационного слова, когда исходным символом РССК1 является "1", в последнюю позицию кадра после перемежения, количество выходных символов "1", вырабатываемых РССК2, будет очень мало. В этом случае, поскольку РССК1 и РССК2 вырабатывают очень малое количество выходных символов "1" в соответствии с Уравнением (1), общее свободное расстояние серьезно уменьшается. Тем не менее, если, как показано на фиг.5, турбоперемежитель сдвигает позицию входного информационного слова, в котором исходным символом РССК1 является "1", в первую позицию или в позицию, расположенную рядом с ведущей позицией кадра после перемежения, количество выходных символов "1", вырабатываемых РССК2, будет увеличиваться. Это происходит потому, что множество символов "1" выводятся через (N(размер перемежителя) - h(количество "1")) переходов состояний кодера РССК2. В этом случае РССК2 вырабатывает большое количество выходных символов "1", тем самым увеличивая общее свободное расстояние. If, as shown in FIG. 4, the turbo interleaver shifts (or rearranges) the position of the input information word when the initial character of PCCC1 is “1”, to the last position of the frame after interleaving, the number of output characters “1” generated by PCCC2 will be very small. In this case, since RCCC1 and RCCC2 produce a very small number of output symbols "1" in accordance with Equation (1), the total free distance is seriously reduced. However, if, as shown in FIG. 5, the turbo interleaver shifts the position of the input information word, in which the original character of RCCC1 is “1”, to the first position or to the position located next to the leading position of the frame after interleaving, the number of output characters " 1 "produced by RCCC2 will increase. This is because the set of characters "1" are output through (N (interleaver size) - h (number of "1")) state transitions of the RCCC2 encoder. In this case, RCCC2 generates a large number of output symbols "1", thereby increasing the total free distance.
Вдобавок к уменьшенному свободному расстоянию, возникающему, когда внутренний перемежитель сдвигает входной информационный бит "1", расположенный в последней позиции кадра, в последнюю позицию кадра, как показано на фиг.4, если один из двух информационных битов с "1", расположенных в конечной позиции кадра, все еще расположены в конечной позиции кадра или рядом с ней даже после перемежения, как показано на фиг.6, общее свободное расстояние будет уменьшаться. In addition to the reduced free distance that occurs when the internal interleaver shifts the input information bit “1” located at the last position of the frame to the last position of the frame, as shown in FIG. 4, if one of the two information bits with “1” located in the end position of the frame are still located at or near the end position of the frame even after interleaving, as shown in FIG. 6, the total free distance will decrease.
Например, если внутренний перемежитель действует в кадровом режиме, показанном на фиг.6, где два символа, расположенные в конечной позиции кадра, являются единицами, а остальные символы являются нулями, то вес Хэмминга входного информационного слова равен 2. Даже в этом случае количество выходных символов, равных "1", вырабатываемых РССК1, становится очень мало, поскольку не имеется больше входного информационного бита. Поэтому по Уравнению (1) РССК2 должен вырабатывать большое количество выходных символов "1" для увеличения общего свободного расстояния. Однако если, как показано на фиг.6, турбоперемежитель сдвигает позицию двух вышеупомянутых символов в конечную позицию (или рядом с конечной позицией) кадра даже после перемежения, РССК2 также будет вырабатывать малое количество выходных символов "1". Однако если, как показано на фиг.7, турбоперемежитель сдвигает позицию двух вышеупомянутых символов в начальную позицию (или рядом с начальной позицией) кадра, РССК2 будет вырабатывать большое количество символов "1". То есть кодер РССК2 выдает множество символов "1" через (N-h) переходов состояний (N = размер перемежителя, h = количество символов "1"). В этом случае, следовательно, РССК2 вырабатывает большее количество выходных символов "1", тем самым увеличивая общее свободное расстояние. For example, if the internal interleaver operates in the frame mode shown in FIG. 6, where two characters located at the end position of the frame are ones and the remaining characters are zeros, then the Hamming weight of the input information word is 2. Even in this case, the number of output there are very few characters equal to "1" generated by RCCC1, since there is no more input information bit. Therefore, according to Equation (1), RCCC2 must generate a large number of output symbols "1" to increase the total free distance. However, if, as shown in FIG. 6, the turbo interleaver shifts the position of the two aforementioned characters to the end position (or near the end position) of the frame even after interleaving, PCC2 will also generate a small number of output characters “1”. However, if, as shown in FIG. 7, the turbo interleaver shifts the position of the two aforementioned characters to the starting position (or near the starting position) of the frame, PCCC2 will generate a large number of “1” characters. That is, the RCCC2 encoder provides a plurality of “1” characters through (N-h) state transitions (N = interleaver size, h = number of “1” characters). In this case, therefore, RCCC2 generates a larger number of output symbols "1", thereby increasing the total free distance.
Этот принцип может быть распространен на случай, в котором турбоперемежитель действует в кадровом режиме, показанном на фиг.8, в котором множество информационных битов со значением "1" присутствует в конечном периоде (или на конечном отрезке) кадра, а все другие информационные биты имеют значение "0". Даже в этом случае общее свободное расстояние увеличивается путем сдвига информационных битов, присутствующих в конечной позиции кадра, в начальную позицию кадра или в более близкие к начальной позиции, как показано на фиг.8. Разумеется, поскольку турбокод является линейным блоковым кодом, даже новое информационное слово, полученное путем добавления ненулевого информационного слова к такому информационному слову, имеет то же самое свойство. Поэтому нижеследующее описание основывается на информационном слове из всех нулей. This principle can be extended to the case in which the turbo interleaver operates in the frame mode shown in FIG. 8, in which a plurality of information bits with a value of “1” are present in the final period (or on the final segment) of the frame, and all other information bits have the value is "0". Even in this case, the total free distance is increased by shifting the information bits present at the end position of the frame to the starting position of the frame or closer to the starting position, as shown in Fig. 8. Of course, since the turbo code is a linear block code, even a new information word obtained by adding a nonzero information word to such an information word has the same property. Therefore, the following description is based on an information word of all zeros.
Итак, при разработке турбоперемежителя, для того, чтобы гарантировать характеристику турбо декодера и свободное расстояние турбокодера, наряду со свойством случайности и свойством расстояния должны выполняться следующие условия. So, when developing a turbo interleaver, in order to guarantee the characteristics of the turbo decoder and the free distance of the turbo encoder, along with the randomness property and the distance property, the following conditions must be met.
Условие 1: при разработке каждого турбоперемежителя информационные биты, соответствующие конкретному периоду от последней позиции кадра, должны быть сдвинуты в самую первую позицию кадра путем перемежения для увеличения свободного расстояния турбокода. Condition 1: when designing each turbo interleaver, information bits corresponding to a specific period from the last position of the frame must be shifted to the very first position of the frame by interleaving to increase the free distance of the turbo code.
Условие 2: информационные биты, соответствующие последней позиции кадра, должны сдвигаться в позицию, предшествующую последней позиции (если возможно, в начальную позицию кадра), путем перемежения для увеличения свободного расстояния турбокода. Condition 2: information bits corresponding to the last position of the frame must be shifted to the position preceding the last position (if possible, to the initial position of the frame) by interleaving to increase the free distance of the turbo code.
Эти условия применимы к двумерному турбоперемежителю, а также к вышеописанному одномерному перемежителю. Одномерный перемежитель выполняет перемежение, рассматривая входной информационный кадр в качестве группы, как показано на фиг.4-8. Двумерный перемежитель выполняет перемежение путем разделения входного информационного кадра на множество групп. Фиг.9 показывает двумерное перемежение, при котором входное информационное слово имеет вес Хэмминга, равный 1. These conditions apply to a two-dimensional turbo interleaver, as well as to the one-dimensional interleaver described above. The one-dimensional interleaver performs interleaving, considering the input information frame as a group, as shown in FIGS. 4-8. A two-dimensional interleaver performs interleaving by dividing the input information frame into multiple groups. 9 shows a two-dimensional interleaving in which the input information word has a Hamming weight of 1.
Как показано, входные информационные биты последовательно записываются в соответствующие группы (или строки). То есть входные информационные биты последовательно записываются в группы (или строки) r0, r1,...,r(R-1). В каждой группе входные информационные биты последовательно записываются слева направо. После этого турбоперемежающий алгоритм случайным образом меняет позиции R•C элементов (т. е. входных информационных битов), где R - количество строк, а С - количество столбцов или, что то же самое, количество информационных битов в группе. В этом случае предпочтительно разрабатывать турбоперемежающий алгоритм так, чтобы информационный бит, расположенный в последней позиции (или самой правой позиции) последней группы, передвигался во время вывода в самую первую позицию, если это возможно. Разумеется, в зависимости от порядка выбора групп входной информационный бит, расположенный в последней позиции, может сдвигаться в самую первую позицию соответствующей группы (или близко к ней). Условие (1) и Условие (2) могут быть нормированы в k-мерном турбоперемежителе (k>2) так же, как и в двумерном перемежителе. As shown, the input information bits are sequentially written to the corresponding groups (or lines). That is, the input information bits are sequentially written into groups (or lines) r0, r1, ..., r (R-1). In each group, input information bits are sequentially written from left to right. After that, the turbo-interleaving algorithm randomly changes the positions of R • C elements (that is, input information bits), where R is the number of rows and C is the number of columns or, which is the same, the number of information bits in the group. In this case, it is preferable to develop a turbo-interleaving algorithm so that the information bit located in the last position (or the rightmost position) of the last group moves during output to the very first position, if possible. Of course, depending on the order in which the groups are selected, the input information bit located in the last position can be shifted to the very first position of the corresponding group (or close to it). Condition (1) and Condition (2) can be normalized in a k-dimensional turbo interleaver (k> 2) in the same way as in a two-dimensional interleaver.
Фиг. 10 показывает случай, в котором входное информационное слово имеет вес Хэмминга более 2. Как показано, информационные биты, расположенные в последней позиции последней группы, сдвигаются к начальным позициям последней группы путем перемежения. Разумеется, подробное правило сдвига (или перемежения) определяется в соответствии с алгоритмом для конкретного перемежителя. Изобретение представляет Условие (1) и Условие (2), которые обязательно должны быть соблюдены при определении правила перемежения. FIG. 10 shows a case in which the input information word has a Hamming weight of more than 2. As shown, information bits located at the last position of the last group are shifted to the starting positions of the last group by interleaving. Of course, the detailed shift (or interleave) rule is determined in accordance with the algorithm for a particular interleaver. The invention presents Condition (1) and Condition (2), which must be observed when determining the rule of alternation.
Ниже описан ПП-перемежитель, имеющий проблемы, присущие известному перемежителю, а затем приведено описание решения проблем, которые имеет этот ПП-перемежитель. The following describes a PP interleaver having problems inherent in a known interleaver, and then describes a solution to the problems that this PP interleaver has.
На первой стадии (1) определяется число строк как R=10 в случае, когда число К входных информационных битов находится в пределах от 481 до 530, и R= 20 в случае, когда число К входных информационных битов является блоком любой другой длины, за исключением от 481 до 530, (2) определяется число столбцов С так, что в случае (1) С=р=53, где р=минимальное простое число, а в случае (2)
(i) находится минимальное простое число р такое, что 0≤(p+1)-K/R;
(ii) если (0≤p-K/R), то перейти к (iii), иначе С=р+1;
(iii) если (0≤p-1-K/R), то С=р-1, иначе С=р.At the first stage (1), the number of lines is determined as R = 10 in the case when the number K of input information bits is in the range from 481 to 530, and R = 20 in the case when the number K of input information bits is a block of any other length, for with the exception of 481 to 530, (2) the number of columns C is determined so that in case (1) C = p = 53, where p = is the minimum prime number, and in case (2)
(i) find a minimal prime number p such that 0≤ (p + 1) -K / R;
(ii) if (0≤pK / R), then go to (iii), otherwise C = p + 1;
(iii) if (0≤p-1-K / R), then C = p-1, otherwise C = p.
На второй стадии сначала будет описан Случай-Б, если С=р+1 по алгоритму перемежения для ПП-перемежителя, который был условно определен как турбоперемежитель UMTS. В приведенном ниже Уравнении (2) R обозначает число групп (или строк) и имеет значение R=10 или R=20. С обозначает размер каждой группы и определяется простым числом р, ближайшим к отношению R/K, определенному на Стадии (1) в соответствии с величиной K/R, где К является размером входных информационных битов в кадре. В Случае-Б С всегда равно р+1. Поэтому размер ПП-перемежителя принимает значение, определяемое R•C, которое больше, чем С. Cj(i) обозначает позицию информационных битов, полученную путем случайной перестановки позиции входных информационных битов в группе для i-й группы, где i= 0, 1, 2, 3,...,р. В дополнение, Pj обозначает начальную величину рандомизации, заданную для вектора j-й строки, и изначально задается алгоритмом.In the second stage, Case-B will be described first if C = p + 1 according to the interleaving algorithm for the PP interleaver, which was conditionally defined as a UMTS turbo interleaver. In the Equation (2) below, R is the number of groups (or rows) and has the value R = 10 or R = 20. C denotes the size of each group and is determined by a prime number p closest to the R / K ratio determined in Step (1) in accordance with the value of K / R, where K is the size of the input information bits in the frame. In Case-B, C is always p + 1. Therefore, the size of the PP interleaver takes a value determined by R • C, which is greater than C. C j (i) denotes the position of the information bits obtained by randomly rearranging the position of the input information bits in the group for the i-th group, where i = 0, 1, 2, 3, ..., p. In addition, P j denotes the initial randomization value specified for the jth row vector, and is initially set by the algorithm.
Уравнение (2)
Б-1) Первообразный корень g0 выбирается из заданной таблицы констант инициализации рандомизации (3GPP TS 25.212 Табл. 2; таблица простых р и связанных простых корней) так, что д0 является простым корнем поля, основанного на простом p.Equation (2)
B-1) The primitive root g0 is selected from the given table of randomization initialization constants (3GPP TS 25.212 Table 2; table of simple p and connected simple roots) so that q0 is a simple root of the field based on simple p.
Б-2) Формируется базовая последовательность C(i) для использования для рандомизации вектора строки с использованием следующей формулы:
C(i)=[g0•C(i-1)]mod р, i=1, 2, 3,...р-2, С(0)=1
Б-3) Выбирается множество минимальных простых целых чисел {qj, j=0, 1, 2, ...R-1} такое, что HOД{qj, р-1}=1, qj>6 и qj>q(j-1), где НОД - наибольший общий делитель, a q0=1.B-2) A basic sequence C (i) is generated for use for randomizing a row vector using the following formula:
C (i) = [g0 • C (i-1)] mod p, i = 1, 2, 3, ... p-2, C (0) = 1
B-3) Choose the set of minimal prime integers {q j , j = 0, 1, 2, ... R-1} such that HOD {q j , p-1} = 1, q j > 6 and q j > q (j-1) , where GCD is the largest common factor, aq 0 = 1.
Б-4) { pj, j=0, 1, 2,..., R-1}, являющееся новым множеством простых чисел, вычисляется из {qj, j=0, 1, 2,...,R-1} так, что pp(j)=qj, где j=0,1,... , R-1, и p(j) является схемой межстроковой перестановки, определяемой на третьей стадии.B-4) {p j , j = 0, 1, 2, ..., R-1}, which is a new set of primes, is calculated from {q j , j = 0, 1, 2, ..., R -1} so that p p (j) = q j , where j = 0,1, ..., R-1, and p (j) is the inter-line permutation scheme defined in the third stage.
Б-5) Определяются элементы j-й межстроковой перестановки по следующему способу:
Cj(i)=C([i•pj]mod(p-1)), i=0, 1, 2, 3,...,р-2;
Cj(p-1)=0 и
Cj(р)=р.B-5) The elements of the j-th inter-line permutation are determined by the following method:
C j (i) = C ([i • p j ] mod (p-1)), i = 0, 1, 2, 3, ..., p-2;
C j (p-1) = 0 and
C j (p) = p.
На третьей стадии выполняется строковая перестановка на основании следующих структур: p(j) (j=0, 1, 2,...,R-1), где p(j) является начальной позицией строки, ставшей после перестановки j-й. Эти структуры используются следующим образом: если количество К входных информационных битов находится в пределах от 320 до 480, выполняется структура рA выбора группы, если количество К входных информационных битов находится в пределах от 481 до 530, выполняется структура рB выбора группы, если количество К входных информационных битов находится в пределах от 531 до 2280, выполняется структура рA выбора группы, если количество К входных информационных битов находится в пределах от 2281 до 2480, выполняется структура рБ выбора группы, если количество К входных информационных битов находится в пределах от 2481 до 3160, выполняется структура рA выбора группы, если количество К входных информационных битов находится в пределах от 3161 до 3210, выполняется структура рБ выбора группы, а если количество К входных информационных битов находится в пределах от 3211 до 5114, выполняется структура рА выбора группы. Структура выбора группы такова:
рА: { 19, 9, 14, 4, 0, 2, 5, 7, 12, 18, 10, 8, 13, 17, 3, 1, 16, 6, 15, 11} для R=20;
рБ: { 19, 9, 14, 4, 0, 2, 5, 7, 12, 18, 16, 13, 17, 15, 3, 1, 6, 11, 8, 10} для R=20;
рВ: {9, 8, 7, 6, 5, 4, 3, 2, 1, 0} для R=10.At the third stage, a string permutation is performed based on the following structures: p (j) (j = 0, 1, 2, ..., R-1), where p (j) is the initial position of the string that became the jth after the permutation. These structures are used as follows: if the number K of input information bits is in the range from 320 to 480, the group selection structure p A is performed; if the number K of input information bits is in the range from 481 to 530, the group selection structure p B is performed if the number To the input information bits is in the range from 531 to 2280, the group selection structure p A is executed, if the number To the input information bits is in the range from 2281 to 2480, the group selection structure p B is executed if the number To the input information bits is in the range from 2481 to 3160, the group selection structure p A is executed, if the number K of the input information bits is in the range 3161 to 3210, the group selection structure p B is executed, and if the number K of the input information bits is within from 3211 to 5114, p is executed structure A group selection. The group selection structure is as follows:
p A : {19, 9, 14, 4, 0, 2, 5, 7, 12, 18, 10, 8, 13, 17, 3, 1, 16, 6, 15, 11} for R = 20;
p B : {19, 9, 14, 4, 0, 2, 5, 7, 12, 18, 16, 13, 17, 15, 3, 1, 6, 11, 8, 10} for R = 20;
p B : {9, 8, 7, 6, 5, 4, 3, 2, 1, 0} for R = 10.
Здесь следует отметить, что последняя операция Б-5) определяется как Cj(p)= p. To есть это означает, что если позицией входного информационного бита до перемежения была р, то входной информационный бит остается в позиции р после ПП-перемежения. Следовательно, для последней группы (j=19) информационные биты CR-1(Р)=C19(р), находящиеся в последней позиции, сохраняют ту же позицию i=P, являющуюся последней позицией 19-й группы. Поэтому Условие (2) построения турбоперемежителя не удовлетворяется.It should be noted here that the last operation B-5) is defined as C j (p) = p. That is, this means that if the position of the input information bit before interleaving was p, then the input information bit remains in position p after PP interleaving. Therefore, for the last group (j = 19), the information bits C R-1 (P) = C 19 (p) in the last position retain the same position i = P, which is the last position of the 19th group. Therefore, Condition (2) for constructing a turbo interleaver is not satisfied.
То есть для решения имеющейся у ПП-перемежителя проблемы, шаг Б-5) алгоритма должен быть модифицирован следующим образом. Изобретение предлагает шесть способов, от Б-5-1) до Б-5-6), в качестве примера. Оптимальное решение может быть выбрано путем моделирования в свете свойств турбоперемежителя. That is, to solve the problem existing in the PP-interleaver, step B-5) of the algorithm should be modified as follows. The invention provides six methods, from B-5-1) to B-5-6), as an example. The optimal solution can be chosen by modeling in the light of the properties of the turbo interleaver.
Выбирается один из 6 следующих способов. Choose one of the 6 following methods.
Б-5-1) Меняются позиции CR-1(0) и CR-1(p). R=10 или 20.B-5-1) The positions of C R-1 (0) and C R-1 (p) are changing. R = 10 or 20.
Б-5-2) Меняются позиции CR-1(p-1) и CR-1(p). R=10 или 20.B-5-2) The positions of C R-1 (p-1) and C R-1 (p) are changing. R = 10 or 20.
Б-5-3) Для каждого j меняются позиции Cj(0) и Cj (р). j=0, 1, 2...,R-1.B-5-3) For each j, the positions of C j (0) and C j (p) change. j = 0, 1, 2 ..., R-1.
Б-5-4) Для каждого j меняются позиции Cj(p-1) и Cj(р). j=0, 1, 2,..., R-1.B-5-4) For each j, the positions of C j (p-1) and C j (p) change. j = 0, 1, 2, ..., R-1.
Б-5-5) Для каждого j определяется оптимальная позиция k для перемежения позиций Cj(k) и Cj(p) в используемом алгоритме перемежения.B-5-5) For each j, the optimal position k is determined for the alternation of the positions C j (k) and C j (p) in the used interleaving algorithm.
Б-5-6) Для (R-1)-й строки определяется оптимальная позиция k для перемежения позиций CR-1(k) и CR-1(p) в используемом алгоритме перемежения.B-5-6) For the (R-1) -th line, the optimal position k is determined for alternating the positions C R-1 (k) and C R-1 (p) in the used interleaving algorithm.
Фиг. 11 и 12 показывают функциональную схему и блок-схему алгоритма, соответственно, согласно выполнению настоящего изобретения. FIG. 11 and 12 show a functional diagram and a block diagram of an algorithm, respectively, according to an embodiment of the present invention.
По фиг. 11 блок 912 перестановки вектора-строки (или генератор индекса перестановки вектора-строки) вырабатывает индекс для выбора вектора-строки в соответствии с отсчетом счетчика 911 строки и подает выработанный индекс в верхний адресный буфер адресного буфера 918. Блок 912 перестановки вектора-строки является групповым селектором для последовательного или случайного выбора разделенных групп, если входное информационное слово делится на множество групп. Блок 914 перестановки вектора-столбца (или генератор индекса перестановки вектора-столбца) вырабатывает, в зависимости от модифицированного алгоритма 915 ПП, индекс для перестановки позиций элементов соответствующего вектора-строки (или группы) в соответствии с отсчетом счетчика 913 столбца и подает выработанный индекс в нижний адресный буфер адресного буфера 918. Блок 914 перестановки вектора-столбца является рандомизатором для перестановки в группе позиций информационных битов, которые были последовательно сохранены в порядке ввода, в соответствии с заданным правилом. ОЗУ (Оперативное Запоминающее Устройство) 917 сохраняет временные данные, выработанные в ходе действия программы. Таблица 916 преобразований хранит параметры для перемежения и первообразный корень. Адреса, полученные путем перестановки строк и перестановки столбцов (т.е. адреса, сохраненные в адресном буфере 918), используются в качестве адресов для перемежения. In FIG. 11, the row vector permutation unit 912 (or the row vector permutation index generator) generates an index for selecting the row vector in accordance with the count of the
Фиг. 12 показывает пошаговую схему модифицированного алгоритма ПП. Приводимое ниже описание относится ко второй стадии, Случаю-Б, алгоритма ПП. По фиг. 12 первообразный корень g0 выбирается из заданной таблицы констант инициализации на шаге 1011. После этого на шаге 1013 вырабатывается базовая последовательность C(i) для рандомизации элементов (или информационных битов) группы с помощью следующей формулы:
C(i)=[g0•C(i-1)]mod р, i=0, 1, 2, 3,...,р-2, С(0)=1
После этого на шаге 1015 рассчитывается множество минимальных простых чисел { qj, j=0, 1, 2,...,R-1}, заданное для алгоритма. Затем на шаге 1017 рассчитывается множество простых чисел {pj, j=0, 1, 2,...,R-1} исходя из рассчитанного множества минимальных простых чисел. Затем на шаге 1019 элементы j-й группы рандомизируются по следующему способу:
Cj(i)=c([i•pj]mod(p-1), i=0, 1, 2, 3,...,(р-2);
Cj(p-1)=0.FIG. 12 shows a step-by-step diagram of a modified PP algorithm. The following description refers to the second stage, Case-B, of the PP algorithm. In FIG. 12, the antiderivative root g0 is selected from the given table of initialization constants in
C (i) = [g0 • C (i-1)] mod p, i = 0, 1, 2, 3, ..., p-2, C (0) = 1
After that, at
C j (i) = c ([i • p j ] mod (p-1), i = 0, 1, 2, 3, ..., (p-2);
C j (p-1) = 0.
Здесь, для увеличения минимального свободного расстояния турбокодера при рандомизации элементов группы, выбирается один из Б-5-1) - Б-5-6) для перестановки (или сдвига) информационных битов, присутствующих в последней позиции кадра, в другие позиции после перемежения. Here, to increase the minimum free distance of the turbo encoder during the randomization of group elements, one of B-5-1) - B-5-6) is selected to rearrange (or shift) the information bits present in the last position of the frame to other positions after interleaving.
Б-5-1) означает, что позиции первого информационного бита и последнего информационного бита в последней группе меняются местами друг с другом. Б-5-2) означает, что последние два информационных бита последней группы меняются друг с другом. Б-5-3) означает, что для каждой группы информационный бит, находящийся в последней позиции, и информационный бит, находящийся в начальной позиции, меняются местами друг с другом. Б-5-4) означает, что для каждой группы меняются позиции последних двух информационных битов. Б-5-5) означает, что для каждой группы определяется оптимальная позиция k для заданного правила перемежения для замены позиции информационного бита, находящегося в последней позиции каждой строки, позицией информационного бита, находящегося в позиции k. Наконец, Б-5-6) означает, что для последней группы определяется оптимальная позиция k для заданного правила перемежения для замены позиции информационного бита, находящегося в последней позиции, позицией информационного бита, находящегося в позиции k. B-5-1) means that the positions of the first information bit and the last information bit in the last group are interchanged with each other. B-5-2) means that the last two information bits of the last group change with each other. B-5-3) means that for each group the information bit in the last position and the information bit in the initial position are interchanged with each other. B-5-4) means that for each group the positions of the last two information bits change. B-5-5) means that for each group the optimal position k is determined for a given interleaving rule to replace the position of the information bit located at the last position of each line with the position of the information bit located at position k. Finally, B-5-6) means that for the last group, the optimal position k for a given interleaving rule is determined to replace the position of the information bit in the last position with the position of the information bit in position k.
Путем применения модифицированного алгоритма к ПП-перемежителю можно предотвратить уменьшение свободного расстояния турбокодера. Приводимая в конце описания Таблица 2 показывает спектр веса ПП-перемежителя до модификации, а приводимая в конце описания Таблица 3 показывает спектр веса ПП-перемежителя после модификации. By applying the modified algorithm to the PP interleaver, it is possible to prevent a decrease in the free distance of the turbo encoder. Table 2 at the end of the description shows the weight spectrum of the PP interleaver before modification, and Table 3 at the end of the description shows the weight spectrum of the PP interleaver after modification.
В Таблицах 2 и 3 К обозначает размер входного информационного кадра, Рсвоб(1) обозначает свободное расстояние, рассчитанное с помощью ККИП, для которого входное информационное слово имеет вес Хэмминга, равный 1, а Рсвоб(2) обозначает свободное расстояние, рассчитанное с помощью ККИП, для которого входное информационное слово имеет вес Хэмминга, равный 2. Например, для К= 600Б Рсвоб(1) исходного ПП-перемежителя в Таблице 2 обозначено как 25/39/49/53/57/. . . , и это означает, что минимальное свободное расстояние равно 25, а следующее минимальное свободное расстояние равно 39. Подобным же образом, Рсвоб(2)==38/38/42... означает, что минимальное свободное расстояние равно 38. Поэтому отметим, что минимальное свободное расстояние определяется в соответствии со свободным расстоянием по ККИП с весом Хэмминга, равным 1. Для предотвращения уменьшения свободного расстояния ККИП с весом Хэмминга, равным 1, изобретение использует в данном примере способ Б-5-1). То есть Рсвоб(1) улучшается посредством удаления ККИП с весом Хэмминга, равным 1. In Tables 2 and 3, K denotes the size of the input information frame, Rsvob (1) denotes the free distance calculated using the CCIS, for which the input information word has a Hamming weight of 1, and Psvob (2) denotes the free distance calculated using the CCIS , for which the input information word has a Hamming weight of 2. For example, for K = 600B Rsvob (1) of the original PP interleaver in Table 2 is indicated as 25/39/49/53/57 /. . . , and this means that the minimum free distance is 25, and the next minimum free distance is 39. Similarly, Psvob (2) == 38/38/42 ... means that the minimum free distance is 38. Therefore, note that the minimum free distance is determined in accordance with the CCIS free distance with a Hamming weight of 1. In order to prevent a decrease in the free distance of the CCIS with a Hamming weight of 1, the invention uses method B-5-1 in this example). That is, Rsvobod (1) is improved by removing the KKIP with a Hamming weight of 1.
Приводимая в конце описания Таблица 2 показывает весовой спектр ПП-перемежителя до модификации. Given at the end of the description, Table 2 shows the weight spectrum of the PP interleaver before modification.
Приводимая в конце описания Таблица 3 показывает весовой спектр ПП-перемножителя после модификации. Given at the end of the description, Table 3 shows the weight spectrum of the PP multiplier after modification.
Как описано выше, новый турбокодер подавляет уменьшение свободного расстояния, вызванное одним или несколькими информационными битами со значением "1", расположенными в последнем периоде кадрового ввода данных в компонентный кодер, с помощью внутреннего перемежителя, тем самым реализуя турбокодер с высоким качеством работы. As described above, the new turbo encoder suppresses the reduction in free distance caused by one or more information bits with a value of "1" located in the last period of frame data input into the component encoder using an internal interleaver, thereby realizing a turbo encoder with high quality work.
Хотя изобретение показано и описано со ссылкой на его определенное предпочтительное выполнение, специалистам должно быть понятно, что различные изменения по форме и в деталях могут быть осуществлены без отклонения от сущности и объема изобретения, определенных прилагаемой формулой изобретения. Although the invention has been shown and described with reference to its specific preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail can be made without departing from the spirit and scope of the invention as defined by the appended claims.
Claims (16)
i) C(i)= [g0•C(i-1)] mod р, i= 1, 2, . . . , p-2 и С(0)= 1;
ii) Cj(i)= C([i•pj] mod(p-1));
j= 0, 1, 2, . . . , (R-1), i= 0, 1, 2, . . . , (p-1), Cj(p-1)= 0, и Cj(p)= p;
iii) поменять местами CR-1(p) и Cr-1(0),
где р - простое число, ближайшее к K/R;
g0 - первообразный корень, указывающий заранее заданное число, соответствующее р;
pj - множество простых чисел.2. The turbo encoder according to claim 1, characterized in that the interleaver contains a controller for sequentially writing K information bits in the interleaver memory and dividing the information bits into R groups of C information bits in each, for rearranging the address of the information bit recorded in the jth row (where j = 0, 1, 2,..., R-1), to the position C j (i) in this line in accordance with the following given algorithm:
i) C (i) = [g0 • C (i-1)] mod p, i = 1, 2,. . . , p-2 and C (0) = 1;
ii) C j (i) = C ([i • p j ] mod (p-1));
j = 0, 1, 2,. . . , (R-1), i = 0, 1, 2,. . . , (p-1), C j (p-1) = 0, and C j (p) = p;
iii) swap C R-1 (p) and C r-1 (0),
where p is the prime number closest to K / R;
g0 is a primitive root indicating a predetermined number corresponding to p;
p j is the set of primes.
i) выполнить перестановку базовой последовательности
C(i)= [g0•C(i-1)] mod p, i= 1, 2, . . . . (p-2) и С(0)= 1;
ii) выполнить перестановку строк
Cj(i)= C([i•pj] mod(p-1)),
j= 0, 1, 2, . . . , (R-1), i= 0, 1, 2, . . . (p-1), Cj(p-1)= 0 и Cj(p)= p,
iii) поменять местами Cr-1(p) и Cr-1(0),
где р - простое число, ближайшее к K/R;
g0 - первообразный корень, указывающий заранее заданное число, соответствующее р;
pj - множество простых чисел.7. A device for interleaving a frame of K information bits having R groups of C information bits in each, in a primary interleaver used as an internal interleaver for a turbo encoder, comprising a controller for sequentially recording input information bits in the interleaver memory and rearranging the position of the information bit written in the j-th row (where j = 0, 1, 2, ..., R-1), to the position C j (i) in this row in accordance with the following given algorithm:
i) perform a permutation of the base sequence
C (i) = [g0 • C (i-1)] mod p, i = 1, 2,. . . . (p-2) and C (0) = 1;
ii) perform line swapping
C j (i) = C ([i • p j ] mod (p-1)),
j = 0, 1, 2,. . . , (R-1), i = 0, 1, 2,. . . (p-1), C j (p-1) = 0 and C j (p) = p,
iii) swap C r-1 (p) and C r-1 (0),
where p is the prime number closest to K / R;
g0 is a primitive root indicating a predetermined number corresponding to p;
p j is the set of primes.
C(i)= [g0•C(i-1)] mod p, i= 1, 2, . . . , (p-2) и С(0)= 1;
вычисление множества минимальных простых чисел { qj} (j= 0, I, 2, . . . , R-1) путем определения
НОД{ qj, р-1} = 1;
qj>6, qj>q(j-i),
где НОД - наибольший общий делитель;
q0= 1,
внутристроковая перестановка { qj} с помощью
pp(j)= qj, j= 0, 1, . . . , R-1,
где P(j) обозначает заранее заданный порядок выбора для выбора R рядов,
при С= р+1, перестановка последовательностей в j-й строке в соответствии с
Cj(i)= C([i•pj] mod(p-1)),
где j= 0, 1, 2, . . . , (R-1), i= 0, 1, 2, . . . , (p-1), q(p-1)= 0 и Gj(p)= p,
и если (К= С•R), то CR-1(p) меняется местами с CR-1(0).9. The two-dimensional interleaving method according to claim 8, characterized in that the permutation contains the following steps: determining the minimum prime number p closest to K / R, sequentially writing the input sequences of information bits of the frame in the interleaver memory, selecting the primitive root g0 corresponding to the minimum a prime number p, and generating a basic sequence c (i) for in-line permutation of input sequences recorded in lines, in accordance with
C (i) = [g0 • C (i-1)] mod p, i = 1, 2,. . . , (p-2) and C (0) = 1;
computing the set of minimal primes {q j } (j = 0, I, 2,..., R-1) by defining
GCD {q j , p-1} = 1;
q j > 6, q j > q (ji) ,
where GCD is the largest common factor;
q 0 = 1,
inline permutation {qj} with
p p (j) = q j , j = 0, 1,. . . , R-1,
where P (j) denotes a predetermined selection order for selecting R rows,
when C = p + 1, rearrangement of sequences in the jth row in accordance with
C j (i) = C ([i • p j ] mod (p-1)),
where j = 0, 1, 2,. . . , (R-1), i = 0, 1, 2,. . . , (p-1), q (p-1) = 0 and G j (p) = p,
and if (K = C • R), then C R-1 (p) changes places with C R-1 (0).
i) вычислить C(i)= [g0•C(i-1)] mod p, i= 1, 2, . . . , (p-2) и С(0)= 1;
ii) вычислить Cj(i)= C([i•pj] mod (р-1)), где
j= 0, 1, 2, . . . , (R-1), i= 0, 1, 2, . . . , (p-1), Cj(p-1)= 0 и Cj(p)= p;
iii) поменять местами CR-1(p) и Сr-1(0),
где p - простое число, ближайшее к K/R;
g0 - первообразный корень, указывающий заранее заданное число, соответствующее p;
pj - множество простых чисел;
Cj(i) - входная битовая позиция i-го вывода после перестановки j-й строки.15. The method according to p. 13, characterized in that in step a) and b) the positions of the information bits in the frame recorded in the j-th line (where = 0, 1, 2, ... R-1) are rearranged with positions C j (i) in this line in accordance with the algorithm specified in the following steps:
i) calculate C (i) = [g0 • C (i-1)] mod p, i = 1, 2,. . . , (p-2) and C (0) = 1;
ii) calculate C j (i) = C ([i • p j ] mod (p-1)), where
j = 0, 1, 2,. . . , (R-1), i = 0, 1, 2,. . . , (p-1), C j (p-1) = 0 and C j (p) = p;
iii) swap C R-1 (p) and C r-1 (0),
where p is the prime closest to K / R;
g0 is a primitive root indicating a predetermined number corresponding to p;
p j is the set of primes;
C j (i) - input bit position of the i-th output after the permutation of the j-th line.
C(i)= [g0•C(i-1)] mod р, i= 1, 2, . . . , (р-2) и С(0)= 1,
вычисление множества минимальных простых чисел { qj} (j= 0, 1, 2, . . . , R-1) путем определения
НОД{ qj, р-1} = 1;
qj>6, qj>q(j-1),
где НОД - наибольший общий делитель;
q0= 1;
внутристроковая перестановка { qj} с помощью
pp(j)= qj, j= 0, 1, . . . , R-1
где P(j) указывает заранее заданный порядок выбора для выбора R рядов,
при С= р+1, перестановка последовательностей в j-й строке в соответствии с
Cj(i)= C([i•pj] mod(p-1)),
где j= 0, 1, 2, . . . , (R-1), i= 0, 1, 2, . . . , (p-1), Cj(p-1)= 0 и Cj(p)= p,
и если (K= C•R), то СR-1 (Р) меняется местами с Сr-1(0), выбор R строк в соответствии с заранее заданным порядком P(j), и выбор одной входной последовательности из выбранной строки и предоставление выбранной входной последовательности в качестве адреса считывания для перемежения информационных битов входного кадра.16. A two-dimensional interleaving method, comprising the following steps: sequentially writing input sequences K of information bits of a frame into a rectangular matrix R • C; the choice of the primitive root g0 corresponding to the minimum prime number p, and the generation of the basic sequence c (i) for in-line permutation of the input sequences written in lines, in accordance with
C (i) = [g0 • C (i-1)] mod p, i = 1, 2,. . . , (p-2) and C (0) = 1,
computing the set of minimal primes {q j } (j = 0, 1, 2,..., R-1) by defining
GCD {q j , p-1} = 1;
q j > 6, q j > q (j-1) ,
where GCD is the largest common factor;
q 0 = 1;
inline permutation {q j } with
p p (j) = q j , j = 0, 1,. . . R-1
where P (j) indicates a predetermined selection order for selecting R rows,
when C = p + 1, rearrangement of sequences in the jth row in accordance with
C j (i) = C ([i • p j ] mod (p-1)),
where j = 0, 1, 2,. . . , (R-1), i = 0, 1, 2,. . . , (p-1), C j (p-1) = 0 and C j (p) = p,
and if (K = C • R), then C R-1 (P) changes places with C r-1 (0), the choice of R lines in accordance with a predetermined order P (j), and the selection of one input sequence from the selected strings and providing the selected input sequence as a read address for interleaving the information bits of the input frame.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1999/18928 | 1999-05-19 | ||
KR19990018928 | 1999-05-19 | ||
KR1999/18560 | 1999-05-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2001101916A RU2001101916A (en) | 2003-07-10 |
RU2212103C2 true RU2212103C2 (en) | 2003-09-10 |
Family
ID=29774891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2001101916A RU2212103C2 (en) | 1999-05-19 | 2000-05-19 | Turbo-interleaving device and method |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2212103C2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8379738B2 (en) | 2007-03-16 | 2013-02-19 | Samsung Electronics Co., Ltd. | Methods and apparatus to improve performance and enable fast decoding of transmissions with multiple code blocks |
US8386878B2 (en) | 2007-07-12 | 2013-02-26 | Samsung Electronics Co., Ltd. | Methods and apparatus to compute CRC for multiple code blocks |
-
2000
- 2000-05-19 RU RU2001101916A patent/RU2212103C2/en active
Non-Patent Citations (1)
Title |
---|
ERIC К. HALL et al. Stream-oriented turbocodes. Vehicular technology conference. v.1, p.71-75, 1998. OSCAR Y. TAKESHITA et al. New classes of algebraic interleavers for turbo-codes. Information theory, proceedings. IEEE international symposium on publishshed, p.419, 1998. * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8379738B2 (en) | 2007-03-16 | 2013-02-19 | Samsung Electronics Co., Ltd. | Methods and apparatus to improve performance and enable fast decoding of transmissions with multiple code blocks |
US8386878B2 (en) | 2007-07-12 | 2013-02-26 | Samsung Electronics Co., Ltd. | Methods and apparatus to compute CRC for multiple code blocks |
US8862958B2 (en) | 2007-07-12 | 2014-10-14 | Samsung Electronics Co., Ltd. | Methods and apparatus to compute CRC for multiple code blocks |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE43212E1 (en) | Turbo interleaving apparatus and method | |
KR100373965B1 (en) | Turbo code interleaver with near optimal performance | |
CA2368027C (en) | 2-dimensional interleaving apparatus and method | |
US6353900B1 (en) | Coding system having state machine based interleaver | |
EP0963049A2 (en) | Interleaving with golden section increments | |
JP2003152551A (en) | Interleaving order generator, interleaver, turbo encoder and turbo decoder | |
US6304985B1 (en) | Coding system having state machine based interleaver | |
JPWO2006087792A1 (en) | Encoding apparatus and encoding method | |
RU2212103C2 (en) | Turbo-interleaving device and method | |
WO2004002046A2 (en) | Method of interleaving/deinterleaving in a communication system | |
KR100330234B1 (en) | Turbo interleaving apparatus and method | |
KR100362557B1 (en) | 2-dimensional interleaving apparatus and method | |
KR20030082699A (en) | Turbo internal interleaving method and device based on golden sequence |