Claims (12)
1. Адресный генератор для генерирования пригодных адресов, которых меньше, чем 2k+n полных адресов, разделенных на 2k групп, каждая из которых имеет 2n позиционных адресов без генерирования непригодных полных адресов, содержащий первый счетчик для подсчета множества тактовых импульсов, для генерирования группового счета, состоящего из k разрядов, индицирующих одну из 2k групп на каждом тактовом импульсе, и для генерирования переноса после подсчета 2k тактовых импульсов; второй счетчик для приема переноса от первого счетчика, для подсчета переносов и для генерирования позиционного счета, состоящего из n разрядов, индицирующих один из 2n позиционных адресов; контроллер для запоминания непригодных значений группового счета, представляющих непригодные группы, частично непригодных значений группового счета, представляющих группы, имеющие как пригодные, так и непригодные позиционные адреса, и непригодных значений позиционного счета, представляющих непригодные позиционные адреса, и для управления первым и вторым счетчиками так, чтобы они не выводили групповой счет и позиционный счет, если групповой счет является одним из непригодных значений группового счета или групповой счет является одним из частично непригодных значений группового счета и позиционный счет является одним из непригодных значений позиционного счета; блок реверсирования разрядов для приема и реверсирования k разрядов из первого счетчика; операционное устройство для приема группового счета и позиционного счета, для определения значения начального числа, соответствующего принятому групповому счету, для определения результирующих разрядов на основании уравнения (значение начального числа) * (позиционный счет + 1) mod 2n; и буфер для запоминания пригодных адресов, образованных из реверсированных разрядов, принятых от блока реверсирования разрядов, и из результирующих разрядов, принятых от операционного устройства.1. An address generator for generating suitable addresses that are less than 2 k + n full addresses, divided into 2 k groups, each of which has 2 n positional addresses without generating unsuitable full addresses, containing a first counter for counting a plurality of clock pulses, for generating a group account, consisting of k bits, indicating one of 2 k groups on each clock pulse, and for generating a transfer after counting 2 k clock pulses; a second counter for receiving transfers from the first counter, for counting transfers and for generating a positional account consisting of n bits indicating one of 2 n positional addresses; a controller for storing unusable group account values representing unsuitable groups, partially unusable group account values representing groups having both suitable and unsuitable position addresses, and unsuitable position account values representing unsuitable position addresses, and for controlling the first and second counters so that they do not display a group account and a position account, if the group account is one of the unsuitable values of the group account or the group account is one from a partially obsolete group count values and the position count is one of the unusable position count values; a block for reversing bits to receive and reverse k bits from the first counter; an operating device for receiving a group account and a position account, for determining a seed value corresponding to a received group account, for determining the resulting digits based on the equation (seed value) * (position score + 1) mod 2 n ; and a buffer for storing suitable addresses formed from the reversed digits received from the digit reversing unit and from the resulting digits received from the operating device.
2. Способ генерирования пригодных адресов, которых меньше, чем 2k+n полных адресов, разделенных на 2k групп, каждая из которых имеет 2n позиционных адресов, без генерирования непригодных полных адресов, заключающийся в том, что подсчитывают множество тактовых импульсов; генерируют групповой счет на каждом тактовом импульсе, причем групповой счет состоит из k разрядов, индицирующих одну из 2k групп; генерируют перенос после того, как групповой счет подсчитает 2k тактовых импульсов; принимают перенос, подсчитывают переносы и генерируют позиционный счет на каждом тактовом импульсе, причем позиционный счет состоит из n разрядов, индицирующих один из 2n адресов; управляют групповым счетом и позиционным счетом так, чтобы не выводить их, если групповой счет является одним из непригодных значений группового счета, представляющих непригодные группы, или если групповой счет является одним из частично непригодных значений группового счета, представляющих группы, имеющие как пригодные, так и непригодные позиционные адреса, и позиционный счет является одним из непригодных значений позиционного счета, представляющих непригодные позиционные адреса; определяют значение начального числа, соответствующее групповому счету; определяют результирующие разряды на основе уравнения результирующие разряды = (значение начального числа)*(позиционный счет + 1) mod 2n; реверсируют k разрядов из первого счетчика; и генерируют пригодных адрес, образованный из реверсированных разрядов и результирующих разрядов.2. A method of generating suitable addresses that are less than 2 k + n full addresses, divided into 2 k groups, each of which has 2 n positional addresses, without generating unsuitable full addresses, which consists in counting a plurality of clock pulses; generating a group count on each clock pulse, wherein the group count consists of k bits indicating one of 2 k groups; generate a transfer after the group count counts 2 k clock pulses; receive the transfer, calculate the transfers and generate a positional count on each clock pulse, and the positional count consists of n bits indicating one of 2 n addresses; manage the group account and positional account so as not to display them if the group account is one of the unusable group account values representing unsuitable groups, or if the group account is one of the partially unsuitable group account values representing the groups having both suitable and unsuitable positional addresses, and the positional account is one of the unsuitable values of the positional account representing unsuitable positional addresses; determine the value of the initial number corresponding to the group account; determine the resulting bits based on the equation the resulting bits = (value of the initial number) * (positional count + 1) mod 2 n ; reverse k bits from the first counter; and generate a usable address formed from the reversed digits and the resulting digits.
3. Адресный генератор для генерирования пригодных адресов, которых меньше, чем 2k+n полных адресов, разделенных на 2k групп, каждая из которых имеет 2n позиционных адресов, без генерирования непригодных полных адресов, содержащий (k+n)-разрядный двоичный счетчик, включающий в себя k-разрядный двоичный счетчик для подсчета множества тактовых импульсов, для генерирования группового счета, состоящего из k разрядов, причем групповой счет индицирует одну из 2k групп на каждом тактовом импульсе, и для генерирования переноса после подсчета 2k тактовых импульсов, и n-разрядный двоичный счетчик для приема переноса из k-разрядного двоичного счетчика и для генерирования позиционного счета j из n разрядов, индицирующего один из 2n адресов в группе; контроллер для запоминания непригодных значений группового счета, представляющих непригодные группы, частично непригодных значений группового счета, представляющих группы, имеющие как пригодные, так и непригодные позиционные адреса, и непригодных значений позиционного счета, представляющих непригодные позиционные адреса, и для управления (k+n)-разрядным двоичным счетчиком так, чтобы он не выводил групповой счет и позиционный счет, если групповой счет является одним из непригодных значений группового счета, или если групповой счет является одним из частично непригодных значений группового счета и позиционный счет является одним из непригодных значений позиционного счета; блок реверсирования разрядов для приема и реверсирования k разрядов из k-разрядного двоичного счетчика; и операционное устройство для приема группового счета и позиционного счета, для определения значения начального числа, соответствующего принятому групповому счету, для генерирования результирующих разрядов на основании уравнения3. An address generator for generating usable addresses that are less than 2 k + n full addresses, divided into 2 k groups, each of which has 2 n positional addresses, without generating unsuitable full addresses, containing (k + n) -bit binary a counter including a k-bit binary counter for counting a plurality of clock pulses, for generating a group count of k bits, the group count indicating one of 2 k groups on each clock pulse, and for generating a transfer after counting 2 k clock pulses, and an n-bit binary counter for receiving transfer from a k-bit binary counter and for generating a positional count j of n bits, indicating one of 2 n addresses in the group; a controller for storing unsuitable group account values representing unsuitable groups, partially unsuitable group account values representing groups having both suitable and unsuitable position addresses, and unsuitable position account values representing unsuitable position addresses, and for control (k + n) -bit binary counter so that it does not display a group account and a position account if the group account is one of the unsuitable values of the group account, or if the group account is tsya a partially obsolete group count values and the position count is one of the unusable position count values; a bit reversing unit for receiving and reversing k bits from a k-bit binary counter; and an operating device for receiving a group account and a positional account, for determining a seed value corresponding to a received group account, for generating resulting bits based on the equation
результирующие разряды = (значение начального числа) * (позиционный счет + 1) mod 2n;resulting bits = (value of the initial number) * (positional count + 1) mod 2 n ;
при этом пригодные адреса образуются из реверсированных разрядов из блока реверсирования разрядов и из результирующих разрядов из операционного устройства.in this case, suitable addresses are formed from reversed bits from the block of bit reversal and from the resulting bits from the operating device.
4. Способ генерирования пригодных адресов, которых меньше, чем 2k+n полных адресов, разделенных на 2k групп, каждая из которых имеет 2n позиционных адресов, с помощью адресного генератора, имеющего (k+n)-разрядный двоичный счетчик для получения группового счета, состоящего из k разрядов, индицирующих одну из 2k групп, и позиционного счета, состоящего из n разрядов, индицирующих один из 2n адресов в каждой группе, блок реверсирования разрядов для реверсирования k разрядов группового счета и операционное устройство для приема группового счета и позиционного счета, определения значения начального числа и генерирования результирующих разрядов с помощью уравнения (значение начального числа) * (позиционный счет + 1) mod 2n, заключающийся в том, что генерируют групповой счет на каждом тактовом импульсе; генерируют перенос после того, как групповой счет подсчитает 2k тактовых импульсов; принимают перенос и генерируют позиционный счет на каждом тактовом импульсе; и управляют групповым счетом и позиционным счетом так, чтобы не выводить их, если групповой счет является одним из непригодных значений группового счета, представляющих непригодные группы, или групповой счет является одним из частично непригодных значений группового счета, представляющих группы, имеющие как пригодные, так и непригодные позиционные адреса, и позиционный счет является одним из непригодных значений позиционного счета, представляющих непригодные позиционные адреса; при этом пригодные адреса образуют из реверсированных разрядов из блока реверсирования разрядов и из результирующих разрядов из операционного устройства.4. A method of generating suitable addresses, which are less than 2 k + n full addresses, divided into 2 k groups, each of which has 2 n positional addresses, using an address generator having a (k + n) -bit binary counter to obtain a group account consisting of k bits indicating one of 2 k groups, and a position account consisting of n bits indicating one of 2 n addresses in each group, a bit reversing unit for reversing k bits of a group account and an operating device for receiving a group account and poses insulating account, determining the value of the seed and generating discharges resulting from equation (seed value) * (position count + 1) mod 2 n, comprising the steps of generating a group count at each clock pulse; generate a transfer after the group count counts 2 k clock pulses; accept the transfer and generate a positional account on each clock pulse; and manage the group account and positional account so as not to display them if the group account is one of the unsuitable values of the group account representing unsuitable groups, or the group account is one of the partially unsuitable values of the group account representing groups having both suitable and unsuitable positional addresses, and the positional account is one of the unsuitable values of the positional account representing unsuitable positional addresses; in this case, suitable addresses are formed from reversed bits from the block of bit reversal and from the resulting bits from the operating device.
5. Адресный генератор для генерирования адреса считывания/записи для памяти турбоперемежителя/обращенного перемежителя, содержащий первый счетчик для подсчета первой последовательности, представляющей одну из групп в блоке перемежения, определенной согласно заданному размеру перемежителя, и для выведения первого счета с каждым тактовым импульсом; второй счетчик для подсчета второй последовательности, представляющей один из позиционных адресов в каждой группе, и для выведения второго счета с каждым тактовым импульсом; контроллер для выражения размера перемежителя/обращенного перемежителя в виде двоичного числа для установки старших разрядов этого двоичного числа в качестве первого порога, который соответствует последней пригодной группе, для установки остальных разрядов двоичного числа в качестве второго порога, соответствующего первому непригодному позиционному адресу в последней пригодной группе, для управления первым счетчиком так, чтобы он не выводил первый счет, если этот первый счет после реверсирования больше, чем первый порог, и для управления вторым счетчиком так, чтобы он не выводил второй счет, если и второй счет после преобразования посредством операции ЛКП (линейной конгруэнтной последовательности) больше или равен второму порогу, и первый счет после реверсирования равен первому порогу; блок реверсирования разрядов для реверсирования первого счета и для выведения реверсированных разрядов в качестве старших разрядов для адреса считывания/записи; и операционное устройство для выполнения операции ЛКП на первом и втором счете и для выведения обработанных разрядов в качестве младших разрядов адреса считывания/записи.5. An address generator for generating a read / write address for the memory of the turbo interleaver / deinterleaver, comprising a first counter for counting a first sequence representing one of the groups in the interleaver determined according to a predetermined interleaver size and for outputting a first count with each clock pulse; a second counter for counting a second sequence representing one of the positional addresses in each group, and for deriving a second count with each clock pulse; a controller for expressing the size of the interleaver / deinterleaver as a binary number for setting the high bits of this binary number as the first threshold that corresponds to the last suitable group, for setting the remaining bits of the binary number as the second threshold corresponding to the first unsuitable position address in the last suitable group , to control the first counter so that it does not display the first count if this first count after reversal is greater than the first threshold, and to control eniya second counter so that it does not output the second account, and if the second count after conversion by the operation of the LPC (linear congruential sequence) is greater than or equal to the second threshold and the first count after reversal equal to a first threshold; a bit reversing unit for reversing the first count and for deriving the reversed bits as high bits for the read / write address; and an operating device for performing an LCP operation in the first and second account and for outputting the processed bits as low bits of the read / write address.
6. Адресный генератор по п.5, отличающийся тем, что контроллер управляет первым счетчиком так, чтобы он выводил следующую группу в блоке перемежения, если значение первого счета после реверсирования является значением, превышающим первый порог.6. The address generator according to claim 5, characterized in that the controller controls the first counter so that it displays the next group in the interleaver if the value of the first count after reversing is a value that exceeds the first threshold.
7. Адресный генератор по п.5, отличающийся тем, что контроллер управляет вторым счетчиком так, чтобы он выводил следующий позиционный адрес, если и первый счет является реверсированным значением первого порога, и второй счет после преобразования посредством операции ЛКП больше или равен второму порогу.7. The address generator according to claim 5, characterized in that the controller controls the second counter so that it displays the next positional address if both the first count is a reversed value of the first threshold and the second count after conversion through the LCP operation is greater than or equal to the second threshold.
8. Адресный генератор по п.7, отличающийся тем, что контроллер определяет, является ли второй счет после преобразования посредством операции ЛКП большим или равным второму порогу путем сравнения этого второго счета со значениями счета, полученными путем выполнения упомянутой операции ЛКП в реверсированном виде на первом и втором порогах, и больше ли позиционные адреса, чем второй порог.8. The address generator according to claim 7, characterized in that the controller determines whether the second account after conversion by the LCP operation is greater than or equal to the second threshold by comparing this second account with the account values obtained by performing the said LCP operation in a reversed form on the first and second thresholds, and are there more positional addresses than the second threshold.
9. Адресный генератор по п.5, отличающийся тем, что первый счетчик подсчитывает первый счет для представления одной из 32 групп блока перемежения.9. The address generator according to claim 5, characterized in that the first counter counts the first account to represent one of the 32 groups of the interleaving unit.
10. Способ генерирования адресов в адресном генераторе, вырабатывающем для памяти турбоперемежителя/обращенного перемежителя выходной адрес считывания/записи, который состоит из старших и младших разрядов, причем старшие разряды являются выходами блока реверсирования разрядов, а младшие разряды являются выходами операционного устройства, которое выполняет формулу реверсирования ЛКП (линейной конгруэнтной последовательности), заключающийся в том, что выражают заданный размер перемежителя в виде двоичного числа; устанавливают старшие разряды этого двоичного числа на первый порог; устанавливают младшие разряды этого двоичного числа на второй порог; подсчитывают первый счет, представляющий одну из адресных групп в блоке перемежения, которую определяют согласно размеру перемежителя; выводят первый счет; подсчитывают второй счет, представляющий один из позиционных адресов в каждой группе; выводят второй счет; управляют первым счетом так, чтобы не выводить его, если этот первый счет после преобразования посредством блока реверсирования разрядов больше, чем первый порог; сравнивают результаты выполнения формулы реверсирования ЛКП на первом и втором счете со вторым порогом, если первый счет после преобразования посредством блока реверсирования разрядов равен первому порогу; управляют вторым счетом так, чтобы не выводить его, если результат выполнения формулы ЛКП на первом и втором счете равен второму порогу; подают выведенный первый счет в блок реверсирования разрядов и операционное устройство; и подают выведенный второй счет в операционное устройство; и генерируют выходной адрес считывания/записи.10. The method of generating addresses in the address generator that generates a read / write output address for the memory of the turbo interleaver / deinterleaver, which consists of the upper and lower bits, the higher bits are the outputs of the bit reverser, and the lower bits are the outputs of the operating device that executes the formula reversal of LKP (linear congruent sequence), which consists in expressing the specified size of the interleaver in the form of a binary number; set the high bits of this binary number to the first threshold; set the least significant bits of this binary number to a second threshold; counting the first account representing one of the address groups in the interleaver, which is determined according to the size of the interleaver; withdraw the first account; counting a second count representing one of the positional addresses in each group; withdraw a second account; controlling the first count so as not to output it if this first count after conversion by the bit reversal unit is larger than the first threshold; comparing the results of performing the formula for reversing the LCP in the first and second counts with the second threshold, if the first count after conversion by means of the block reversing the digits is equal to the first threshold; manage the second account so as not to display it if the result of the LKP formula on the first and second account is equal to the second threshold; feeding the withdrawn first account to the discharge reversing unit and the operating device; and submitting the deduced second account to the operating device; and generate a read / write output address.
11. Способ по п.10, отличающийся тем, что дополнительно управляют первым счетом для индикации следующей группы в блоке перемежения, если первый счет является реверсированным значением значения большего, чем первый порог.11. The method according to claim 10, characterized in that it further controls the first count to indicate the next group in the interleaver, if the first count is a reversed value greater than the first threshold.
12. Способ по п.10, отличающийся тем, что дополнительно управляют вторым счетом для индикации следующей позиции битов данных, если и результат выполнения формулы реверсирования ЛКП на первом и втором счете больше или равен второму порогу, и первый счет после реверсирования равен первому порогу.12. The method according to claim 10, characterized in that the second count is additionally controlled to indicate the next position of the data bits, if the result of the LPC reversal formula in the first and second counts is greater than or equal to the second threshold, and the first count after reversal is equal to the first threshold.