Изобретение относится к построению кодирующих и декодирующих циклических кодов, предназначенных для передачи сообщений с высокой достоверностью в системах доставки и обработки дискретной информации. Устройство содержит блок сдвига сомножителя, блок умножения на старший разряд, блок задания обратных связей, блок формирования величины сдвига, блок сдвига произведения. 10 ил.
Изобретение относится к построению кодирующих и декодирующих устройств циклических кодов, предназначенных для передачи сообщений с высокой достоверностью в системах доставки и обработки дискретной информации.
Известно устройство для умножения, содержащее блоки сумматоров по модулю два, ячейки регистра, первую и вторую группы блоков умножения, причем вход устройства соединен со входами блоков умножения первой группы, выходы которых соединены с первыми входами блоков сумматоров соответственно, вторые входы которых соединены соответственно с выходами соответствующих блоков умножения второй группы, входы которых, кроме последнего, соединены между собой, а также с выходом устройства и выходом последнего блока умножения второй группы, выход каждого блока сумматоров, кроме последнего, соединен с входом соответствующей ячейки регистра, выход каждой ячейки регистра соединен с третьим входом соответствующего блока сумматоров, выход последнего блока сумматоров соединен с входом последнего блока умножения второй группы.
Недостаток этого устройства состоит в том, что умножение производится с большими временными затратами и в поле с фиксированными параметрами.
Известно устройство умножения в конечных полях, содержащее ячейки первого, второго и третьего регистров, первые и вторые группы сумматоров по модулю два и элементов ИЛИ, элементы И, блоки умножения, причем, первая группа выходов устройства соединена соответственно с первыми входами элементов ИЛИ первой группы, выходы которых соединены соответственно с первыми входами соответствующих ячеек первого регистра, выходы ячеек первого регистра, за исключением последней, соединены соответственно с вторыми входами соответствующих элементов ИЛИ первой группы, выход последней ячейки первого регистра соединен со вторым входом соответствующего элемента ИЛИ первой группы и с первыми входами элементов И, выходы которых соединены с первыми входами сумматоров первой группы, выходы которых соединены с входами ячеек третьего регистра соответственно, а вторые входы с выходами ячеек третьего регистра и с выходами устройства соответственно, вторые входы элементов И, кроме последнего, соединены с выходами ячеек второго регистра и с первыми входами вторых сумматоров соответственно, второй вход последнего элемента И соединен с выходом последней ячейки второго регистра, со входом первого элемента ИЛИ второй группы, и с входами блоков умножения, выходы которых соединены соответственно с вторыми входами соответствующих сумматоров второй группы, выходы которых соединены с первыми входами соответствующих элементов ИЛИ второй группы, вторые входы которых соединены с входами устройства второй группы, а выходы с входами ячеек второго регистра.
Недостаток данного устройства состоит в том, что умножение в конечных полях производится с существенными затратами времени и при фиксированной размерности поля.
Из известных устройств умножения в конечных полях наиболее близким к заявляемому по совокупности конструктивных и функциональных признаков является устройство умножения, содержащее блок вычисления обратного элемента, блок суммирования, блок вычисления полиномов, мультиплексор, причем, первый и второй входы задания режимов устройства соединены с управляющими входами соответственно блока вычисления обратного элемента и мультиплексора, первая группа информационных входов устройства соединены с группой информационных входов блока вычисления обратного элемента и первой группой информационных входов блока суммирования, а вторая группа информационных входов устройства соединена с первой группой информационных входов блока вычисления полиномов и второй группой информационных входов блока суммирования, группа информационных выходов блока вычисления обратного элемента соединена со второй группой информационных входов блока вычисления полиномов, группы информационных выходов блока суммирования и блока вычисления полиномов соединен соответственно с первой и второй группами информационных входов мультиплексора, группа выходов которого соединена с группой выходов устройства.
Однако известное устройство обладает недостатком, состоящим в том, что умножение может быть осуществлено только в поле с фиксированной размерностью, т. е. умножаются полиномы с числом разрядов не более некоторой фиксированной величины. Это определяет недостаток известного устройства, который состоит в его ограниченных функциональных возможностях. Кроме того, в известном устройстве умножение осуществляется последовательно, по мере вычисления промежуточных полиномов на каждом такте, что снижает быстродействие.
Задача, на решение которой направлено изобретение, заключается в возможности умножения полиномов в поле, размерность которого может быть изменена по необходимости, а также получения результата умножения за минимально возможное время с целью дальнейшего использования устройства в специализированных вычислителях, а также при решении задач построения кодирующих и декодирующих устройств.
Для достижения технического результата, заключающегося в расширении функциональных возможностей устройства умножения в конечных полях за счет осуществления умножения полиномов в поле, размерность которого может быть изменена, и повышения быстродействия предлагается в устройство умножения в конечных полях, содержащее блок умножения на старший разряд и "а
е 1" блоков вычисления полиномов, причем группа выходов блока умножения на старший разряд соединена с группой вторых информационных входов первого блока вычисления полинома, а группы вторых информационных входов i x (i

) блоков вычисления полиномов соединены соответственно с группами информационных входов (i 1)-х блоков вычисления полиномов, дополнительно введены блок сдвига сомножителя, блок задания обратных связей, блок формирования величины сдвига и блок сдвига произведения, причем входы группы первых информационных входов устройства соединены соответственно с информационными входами блока сдвига сомножителя (a
e k)-e (k

) входы группы вторых информационных входов устройства соединены с информационными входами (k)-х блоков вычисления полиномов, а а
е-й вход группы вторых информационных входов устройства соединен с информационным входом блока сдвига сомножителя, группа управляющих входов устройства соединена с группами входов блока задания обратных связей и блока формирования величины сдвига, группы выходов блока формирования величины сдвига соединена с группами управляющих входов блока сдвига сомножителя и блока сдвига произведения, группа выходов блока задания обратных связей соединена с группами управляющих входов (а
е 1) блоков вычисления полиномов, у которых группы первых информационных входов соединены с группой выходов блока сдвига сомножителя и группой информационных входов блока умножения на старший разряд, группа выходов (а
е 1)-го блока вычисления полинома соединена с группой информационных входов блока сдвига произведения, группа выходов которого соединена с группой выходов устройства для умножения в конечных полях.
Блок сдвига сомножителя содержит группы элементов И и ИЛИ, причем первый информационный вход соединен с первыми входами первого, шестого и десятого элементов И, второй информационный вход соединен с первыми входами второго, седьмого и одиннадцатого элементов И, третий информационный вход соединен с первыми входами третьего, восьмого и двенадцатого элементов И, четвертый информационный вход соединен с первыми входами четвертого, девятого элементов И, пятый информационный вход соединен с первым входом пятого элемента И, первый управляющий вход соединен со вторыми входами десятого, одиннадцатого и двенадцатого элементов И, второй управляющий вход соединен с вторыми входами шестого, седьмого, восьмого и девятого элементов И, третий управляющий вход соединен с вторыми входами первого, второго, третьего, четвертого и пятого элементов И, выходы второго, третьего, четвертого и пятого элементов И соединены соответственно с первыми входами первого, второго, третьего и четвертого элементов ИЛИ, выходы шестого, седьмого, восьмого и девятого элементов И соединены соответственно с вторыми входами группы элементов ИЛИ, выходы десятого, одиннадцатого и двенадцатого элементов И соединены соответственно с третьими входами элементов ИЛИ, выход первого элемента И и выходы элементов ИЛИ соединены соответственно с выходами группы выходов блока.
Блок сдвига произведения содержит группы элементов И или ИЛИ, причем первый информационный вход соединен с первым входом первого элемента И группы, второй информационный вход соединен с первыми входами второго и шестого элементов И, третий информационный вход соединен с первыми входами третьего, седьмого и десятого элементов И, четвертый информационный вход соединен с первыми входами четвертого, восьмого и одиннадцатого элементов И, пятый информационный вход соединен с первыми входами пятого, девятого и двенадцатого элементов И, первый управляющий вход соединен с вторыми входами десятого, одиннадцатого и двенадцатого элементов И, второй управляющий вход соединен со вторыми входами шестого, седьмого, восьмого и девятого элементов И, третий управляющий вход соединен с вторыми входами первого, второго, третьего, четвертого и пятого элементов И, выходы первого, второго, третьего и четвертого элементов И соединены соответственно с первыми входами соответствующих элементов ИЛИ группы, выходы шестого, седьмого, восьмого и девятого элементов И соединены соответственно с вторыми входами соответствующих элементов ИЛИ группы, выходы десятого, одиннадцатого и двенадцатого элементов И соединены соответственно с третьими входами первого, второго и третьего элементов ИЛИ группы, выходы группы элементов ИЛИ и выход пятого элемента И соединены соответственно с выходами группы выходов устройства умножения в конечных полях.
Наличие признаков, отличающих заявляемое техническое решение от прототипа, а именно: блок сдвига сомножителей, блок задания обратных связей, блок формирования величины сдвига и блок сдвига произведений, причем входы группы первых информационных входов устройства соединены соответственно с информационными входами блока сдвига сомножителя, (a
e k)-e (k

) входы группы вторых информационных входов устройства соединены с информационными входами (k)-х блоков вычисления полиномов, а а
е-й вход группы вторых информационных входов устройства соединен с информационным входом блока сдвига сомножителя, группа управляющих входов устройства соединена с группами входов блока задания обратных связей и блока формирования величины сдвига, группы выходов блока формирования величины сдвига соединена с группами управляющих входов блока сдвига сомножителя и блока сдвига произведения, группа выходов блока задания обратных связей соединена с группами управляющих входов (а
е 1) блоков вычисления полиномов, у которых группы первых информационных входов соединены с группой выходов блока сдвига сомножителя и с группой информационных входов блока умножения на старший разряд, группа входов (а
е 1)-го блока вычисления полинома соединена с группой информационных входов блока сдвига произведения, группа выходов которого соединена с группой выходов устройства для умножения в конечных полях, обуславливает соответствие заявляемого технического решения критерию "новизна".
Для доказательства наличия причинно-следственной связи между совокупностью существенных признаков заявляемого изобретения и достигаемым техническим результатом обратимся к следующим теоретическим предпосылкам.
В поле Галуа GF(2) умножение двух полиномов p(x) p
a-1x
a-1+p
a-2x
a-2+.+p
1x+p
0, и g(x) g
a-1x
a-1+g
a-2x
a-2+.+g
1x+g
0,p
ig
i
(0,1),i,j=

возможно осуществить за один такт времени, если реализовать устройство, содержащее а ступеней, срабатывающих одновременно, причем на первой ступени будет получен результат S
(1) g
a-1p(x). На второй ступени будет получен результат S
(2)(x) (g
a-1x + g
a-2)p(x) + b
a-2F(x), где b
a-2 первый коэффициент частного от деления g(x)p(x)/F(x). На i-й ступени будет получен результат S
(i)(x) (g
a-1x
a-1 + g
a-2x
a-2 + + g
a-i)P(x) + + (b
a-2x
a-2 + b
a-3x
a-3 + + b
a-i)F(x), где b
a-i (i 1)-й коэффициент частного. На а-й ступени будет получен результат умножения r(x) S
(a)(x) (g
a-1x
a-1 + g
a-2x
a-2 + + + g
o)p(x) + (b
a-2x
a-2 + b
a-3x
a-3 + + + b
o)F(x) g(x)p(x) + b(x)F(x).
Изобретение реализуется средствами вычислительной техники. Один из возможных вариантов предлагается в данном описании.
На фиг. 1 приведена функциональная схема предлагаемого устройства; на фиг. 2 функциональная схема для примера реализации блока сдвига сомножителя; на фиг. 3 и 4 функциональные схемы соответственно блока умножения на старший разряд и блока вычисления полинома; на фиг. 5 и 6 функциональные схемы для примера реализации соответственно блока задания обратных связей и блока формирования величины сдвига; на фиг. 7 функциональная схема для примера реализации блока сдвига произведения; на фиг. 8-10 функциональная схема устройства для примера реализации умножения с заданной разрядностью поля.
Функциональная схема заявляемого устройства (см. фиг. 1) содержит 1
1-1

- группу первых информационных входов; 2 блок сдвига сомножителя; 3
1-3

группу вторых информационных входов; 4 блок умножения на старший разряд; 5
1-5

блоки вычисления полиномов; 6
1-6
е группу управляющих входов; 7 блок задания обратных связей; 8 блок формирования величины сдвига; 9 блок сдвига произведения; 10
1i-10

(i

) (a
e 1) групп информационных выходов блоков вычисления полиномов, 5
1-5

; 11
1-11

группу выходов устройства для умножения в конечных полях.
Функциональная схема для примера реализации блока сдвига сомножителя 2 (см. фиг. 2) содержит: 1
1-1
5 группу информационных входов; 12
1-12
12 группу элементов И; 13
1-13
3 группу управляющих входов; 14
1-14
4 группу элементов ИЛИ; 15
1-15
5 группу выходов блока 2.
Функциональная схема блока умножения на старший разряд 4 (см. фиг. 3) содержит: 3

информационный вход; 15
1-15

группу информационных входов; 16
1-16

группу элементов И; 10
10-10

группу выходов блока 4.
Функциональная схема блока вычисления полинома 5
i (i

) (см. фиг. 4) содержит: 3
i информационный вход; 10
1i-1-10

группу вторых информационных входов; 15
1-15

группу первых информационных входов; 18
1i-18

первую группу элементов И; 19
1i-19

первую группу сумматоров по модулю два; 20
1i-20

вторую группу сумматоров по модулю два; 21
1i-21

вторую группу элементов И; 10
1i-10

группу выходов блока 5.
Функциональная схема для примера реализации блока задания обратных связей 7 (см. фиг. 5) содержит: 6
1-6
7 группу управляющих входов; 23
1-23
4 группу элементов ИЛИ; 24 элемент НЕ; 22
1-22
5 группу выходов блока 7.
Функциональная схема для примера реализации блока формирования величины сдвига 8 (см. фиг. 6) содержит: 6
1-6
7 группу управляющих входов; 25
1-25
3 группу элементов ИЛИ; 13
1-13
3 группу выходов блока 8.
Функциональная схема для примера реализации блока сдвига произведения 9 (см. фиг. 7) содержит:10
1-10
5 группу информационных входов; 13
1-13
3 группу управляющих входов; 26
1-26
12 группу элементов И; 27
1-27
4 группу элементов ИЛИ; 11
1-11
5 группу выходов.
Функциональная схема (пример реализации) устройства для умножения в конечных полях (см. фиг. 8-10) содержит: 1
1-1
5 группу первых информационных входов; 2 блок сдвига сомножителя; 3
1-3
5 группу вторых информационных входов; 6
1-6
7 группу управляющих входов устройства; 7 блок задания размерности поля; 8 блок формирования величины сдвига; 9 блок сдвига произведения; 10
1i-10
5i -i-ю (i

) группу выходов блока вычисления полинома 5
i; 13
1-13
3 группу выходов блока формирования величины сдвига 8; 15
1-15
15 группу выходов блока сдвига сомножителя; 16
1-16
5 группу элементов И блока умножения на старший разряд; 18
1j-18
5j j-ю (j

) группу первых элементов И; 19
1i-19
5i i-ю (i

) группу первых сумматоров по модулю два; 20
1i-20
4i i-ю (i

) группу вторых сумматоров по модулю два; 21
1i-21
5i i-ю (i

) группу вторых элементов И; 11
1-11
5 группу информационных выходов устройства.
Элементы устройства умножения в конечных полях взаимосвязаны следующим образом.
Входы 1
1-1

группы первых информационных входов соединены с соответствующими входами группы информационных входов блока сдвига сомножителя 2, а i-й вход группы вторых информационных входов 3
1-3

соединен с информационным входом блока умножения на старший разряд 4, (а
е j)-й вход группы вторых информационных входов 3
1-3

соединен с информационным входом блока вычисления полинома 5
j, входы 6
1-6
е группы управляющих входов соединены соответственно с группой входов блока задания обратных связей 7 и блока формирования величины сдвига 8, группа выходов блока формирования величины сдвига 8 соединена соответственно с группами информационных входов блока сдвига сомножителя 2 и блока сдвига произведения 9, группа выходов блока сдвига сомножителя 2 соединена с группой информационных входов блока умножения на старший разряд 4 и с группами первых информационных входов блоков вычисления полиномов 5
1-5

, входы группы вторых информационных входов блока вычисления полинома 5
1 соединены соответственно с выходами блока умножения на старший разряд 4, группа выходов блока задания обратных связей 7 соединена с группами управляющих входов блоков вычисления полиномов 5
1-5

, группы информационных выходов 10
1i-10

i-х блоков вычисления полиномов 5
i (i

) соединены соответственно с группами вторых информационных входов (i + 1)-х блоков вычисления полиномов 5
i, а группа информационных выходов блока вычисления полинома 5

соединена с группой информационных входов блока сдвига произведения 9, выходы которого соединены соответственно с выходами 11
1-11

группы выходов устройства.
В блоке сдвига сомножителя 2 (пример реализации) вход 1
1 соединен с первыми входами элементов И 12
1, 12
6, 12
10 группы, вход 1
2 соединен с первыми входами элементов И 12
2, 12
7, 12
11 группы, вход 1
3 соединен с первыми входами элементов 12
3, 12
8, 12
12 группы, вход 1
4 соединен с первыми входами элементов И 12
4, 12
9 группы, вход 1
5 соединен с первым входом элемента И 12
5, вход 13
1 группы управляющих входов блока соединен с вторыми входами элементов И 12
10-12
12 группы, вход 13
2 группы управляющих входов блока соединен с вторыми входами элементов И 12
6-12
9группы, вход 13
3 группы управляющих входов блока соединен со вторыми входами элементов И 12
1-12
5 группы, выходы элементов И 12
2-12
5 соединены соответственно с первыми входами группы элементов ИЛИ 14
1-14
4, выходы элементов И 12
6-12
9 соединены соответственно с вторыми входами группы элементов ИЛИ 14
1-14
4, выходы элементов И 12
10-12
12 соединены соответственно с третьими входами элементов ИЛИ 14
2-14
4 группы, выход элемента И 12
1 и выходы группы элементов ИЛИ 14
1-14
4 соединены соответственно с выходами 15
1-15
5 группы выходов блока 2.
В блоке умножения на старший разряд 4 входы 15
1-15

группы информационных входов блока соединены соответственно с первыми входами группы элементов И 16
1-16

, вторые входы которых объединены и соединены с информационным входом 3

блока, выходы группы элементов И 16
1-16

соединены соответственно с выходами 10
10-10

группы выходов блока 4.
В каждом блоке вычисления полинома 5
i (i

) вход 15
j (j

) группы первых информационных входов соединен с первым входом элемента И 18
ij первой группы, вторые входы которых объединены и соединены с информационным входом 3
i блока, а выход элемента И 18
jiсоединен с первым входом соответствующего сумматора по модулю два 19
jiпервой группы, входы 10
1i-1-10

группы вторых информационных входов соединены с вторыми входами соответствующих сумматоров по модулю два 20
1i-20

второй группы, первые входы элементов И 21
1i-21

второй группы объединены и соединены с входом 10

группы вторых информационных входов, входы 21
1-22

группы управляющих входов соединены соответственно с вторыми входами элементов И 21
1i-21

второй группы, выходы которых соединены соответственно со вторыми входами сумматоров по модулю два 19
1i-19

первой группы, а выходы сумматоров по модулю два 19
2i-19

первой группы соответственно соединены с первыми входами сумматоров по модулю два 20
1i-20

второй группы, выход сумматора по модулю два 19
1i первой группы и выходы сумматоров по модулю два 20
1i-20

второй группы соединены соответственно с выходами 10
1i-10

блока вычисления полинома 5
i.
В блоке задания обратных связей 7 (пример реализации) вход 6
1соединен с первым входом третьего элемента ИЛИ 23
3, вход 6
2 соединен с первым входом четвертого элемента ИЛИ 23
4, вход 6
3 соединен с первым входом второго элемента ИЛИ 23
2, вход 6
4 соединен с вторым входом второго элемента ИЛИ 23
2, с входом элемента НЕ 24 и с вторым входом четвертого элемента ИЛИ 23
4, вход 6
5 соединен с первым входом первого элемента ИЛИ 23
1, вход 6
6 соединен с вторым входом первого элемента ИЛИ 23
1, с вторым входом третьего элемента ИЛИ 23
3 и с третьим входом четвертого элемента ИЛИ 23
4, вход 6
7 соединен с третьим входом первого элемента ИЛИ 23
1, с третьим входом второго элемента ИЛИ 23
2 и с четвертым входом четвертого элемента ИЛИ 23
4, выходы элементов ИЛИ 23
1-23
4 и выход элемента НЕ 24 соответственно соединены с выходами 22
1-22
5 блока 7.
В блоке формирования величины сдвига 8 (пример реализации) входы 6
1и 6
2 соединены соответственно с первым и вторым входами первого элемента ИЛИ 25
1, входы 6
3 и 6
4 соответственно соединены с первым и вторым входами второго элемента ИЛИ 25
2, входы 6
5-6
7 соответственно соединены с первым, вторым и третьим входами третьего элемента ИЛИ 25
3, выход элемента ИЛИ 25
i (i

) соединен с выходом 13
i блока 8.
В блоке сдвига произведения 9 (пример реализации) вход 10
1 соединен с первым входом элемента И 26
1 группы, вход 10
2 соединен с первыми входами элементов И 26
2 и 26
6 группы, вход 10
3 соединен с первыми входами элементов И 26
3, 26
7 и 26
10 группы, вход 10
4 соединен с первыми входами элементов И 26
4, 26
8 и 26
11 группы, вход 10
5 соединен с первыми входами элементов И 26
5, 26
9 и 26
12 группы, вход 13
1 группы управляющих входов блока соединен с вторыми входами элементов И 26
10-26
12 группы, а 13
2 группы управляющих входов блока соединен с вторыми входами элементов И 26
6-26
9 группы, вход 13
3 группы управляющих входов блока соединен с вторыми входами элементов И 26
1-26
5 группы, выходы элементов И 26
1-26
4соединены соответственно с первыми входами группы элементов ИЛИ 27
1-27
4, выходы элементов И 26
6-26
9 соединены соответственно с вторыми входами группы элементов ИЛИ 27
1-27
4, выходы элементов И 26
10-26
12соединены соответственно с третьими входами элементов ИЛИ 27
1-27
3группы, выходы группы элементов ИЛИ 27
1-27
4 и выход элемента И 26 соединены соответственно с выходами 11
1-11
5 группы выходов устройства для умножения в конечных полях.
Работает устройство для умножения в конечных полях следующим образом.
При описании работы устройства в поле GF(2

) (i

), определенном полиномом F
i(x) (i

) степени a
i с коэффициентом из поля GF(2)- т.е.
F
i(x) F
io+F
i1x+.+F

x

, F
ij
GF(2), i=

,j=

,F
io=1, каждый элемент поля представляют в виде полинома над GF(2), степень которого меньше а
i, т.е. вместо элементов p,q,r

GF(2

) рассматривают полиномы
p
i(x)

p
ijx
j, p
ij
GF(2), i=

, j=

,
q
i(x)

q
ijx
j, q
ij
GF(2), i=

, j=

,
r
i(x)

r
ijx
j, r
ij
GF(2), i=

, j=

.
Тогда умножение элементов GF(2
ai), т.е. p
iq
i r
i, выполняется по правилам умножения представляющих эти элементы полиномов по модулю F
i(x), т.е.
r
i(x) p
i(x)q
i(x) + b
i(x)F
i(x), (1) где b
i(x) полином степени меньшей, чем a
i 1.
В дальнейшем, для определенности, будем считать, что величины a
i, i

упорядочены в порядке неубывания индексов, т.е.
a
1 
a
2

a
e.
Для вычисления полинома r
e(x) можно использовать рекуррентное уравнение S
e(k)(x) q
l1ae-k-1p
e(x) + S
e(k-1)(x)x + b
l1aek-1F(x), k 1, 2, (2) где b
l1aek-1 q
l1ae-kp
l1ae-1 S
l1ae-1(k-1),
S
e(o)(x) q
lae-kpe(x)
Тогда
r
e(x) S
e(ae-1)(x).
Полином r
i(x) в случае a
i < a
e можно вычислить, преобразовав соотношение (1) следующим образом

(x) q
i(x)

(x)+b
i(x)

(x),
где

(x) r
i(x)x

,

(x) p
i(x)x

,

(x) F
i(x)x

Поскольку степень полинома

(x) равна ае, то для вычисления

(x) можно использовать рекурентное уравнение, аналогичное уравнению (2), т.е.

(x) q

(x)+

(x)x+b

(x), k=1,2, (3)
где

(x) q

(x).
Тогда

(x)

(x).
Для получения r
i(x) достаточно разделить

(x) на х
ае
-ai
На a
i, i

входов группы первых информационных входов 1
1-1

устройства в параллельном коде подаются коэффициенты полинома p
i(x). Аналогичным образом на a
i, i

входов группы вторых информационных входов 3
1-3

устройства подаются коэффициенты полинома q
i(x).
С помощью информации, подаваемой с выходов блока формирования величины сдвига 8 на управляющие входы блока сдвига сомножителя 2, вектор коэффициентов полинома p
i(x) сдвигается на (a
e a
i) разрядов в сторону старших разрядов.
На входы блока умножения на старший разряд 4 подается с выходов блока сдвига сомножителя 2 вектор коэффициентов поли-нома

(x) p
i(x)х
ае
-ai и с а
е-го входа группы вторых информационных входов устройства коэффициент a
i,ae-1. На выходах блока умножения на старший разряд 4 будет сформирован результат вектор коэффициентов полинома
S
i(o)(x) q

(x).
На первые информационные входы блока вычисления полинома 5
k (k

) подается вектор коэффициентов полинома

(x), на вторые информационные входы подается вектор коэффициентов полинома S
i(k-1)(x), на информационный вход подается с (a
e k)-го входа группы вторых информационных входов 3
1-3

устройства коэффициент q
i, на управляющие входы подается код с выходов блока задания обратных связей 7. На выходах 10
1k-10

блока вычисления полинома 5
k будет сформирован результат вектор коэффициентов полинома

(x) q

(x)+

(x)x+b

(x).
Коэффициенты полинома q

(x) (первого слагаемого) формируются с помощью первой группы элементов И 18
1k-18

блока 5
k. Формирование коэффициентов полинома

(x) обеспечивает блок задания обратных связей 7. Коэффициенты полинома b

(x) (третьего слагаемого) формируются с помощью второй группы элементов И 21
1k-21
aekблока 5
k. Суммирование всех трех слагаемых осуществляется с помощью первой группы 19
1k-19
aek и второй группы 20
1k-20

сумматоров по модулю два.
Коэффициенты полинома

(x) S
i(
ae-1)(х) с выходов блока вычисления полинома 5

будут подаваться на информационные входы блока сдвига произведения 9. С помощью кода, подаваемого на управляющие входы блока сдвига произведения с выходов блока формирования величины сдвига 8, в блоке сдвига произведения 9 будет осуществлен сдвиг вектора коэффициентов полинома

(x) на (a
e-a
i) разрядов в сторону младших разрядов. На выходах 11
e-11

блока сдвига произведения 9 будут получены коэффициенты искомого полинома r
i(x).
Рассмотрим работу устройства для случая, когда l 7,
F
1 (x) x
3 + x + 1, F
2 (x) x
3 + x
2 + 1,
F
3 (x)' x
4 + x + 1,
F
4 (x) x
4 + x
3 + 1, F
5 (x) x
5 + x
2 + 1,
F
6 (x) x
5 + x
4 + x
3 + x
2 + 1,
F
7 (x) x
5 + x
4 + x
2 + x + 1.
При этом а
1 а
2 3, а
3 а
4 4, а
5 а
6 а
7 5.
На основании значений коэффициентов полиномов

(x) F
i(x)х
ае
-ai

(x) F
1(x)x
2 x
5 + x
3 + x
2,

(x) F
2(x)x
2 x
5+ x
4 + x
2,

(x) F
3(x)x x
5 + x
2 + x,

(x) F
4(x)x x
5 + x
4 + x,

(x) F
5(x),

(x) F
6(x),

(x) F
7(x) составим матрицу синтеза блока задания обратных связей 7, в которой столбцы соответствуют входам, а строки выходам блока задания обратных связей 7.
Y
1 Y
2 Y
3 Y
4 Y
5 Y
6 Y
7 0 0 0 0 1 1 1 b
1 0 0 1 1 0 0 1 b
2 1 1 1 0 1 1 1 b
3 1 0 0 0 0 1 0 b
4 0 1 0 1 0 1 1 b
5 Тогда
b
1= Y
5
Y
6
Y
7, b
1= Y
3
Y
4
Y
7, b
3=

b
4= Y
1
Y
6, b
5= Y
2
Y
4
Y
6
Y
7 Построенный в соответствии с полученными выражениями блока задания обратных связей 7 приведен на фиг. 5.
На основании значений a
i, i

составим матрицу синтеза блока формирования величины сдвига 8, в которой столбцы соответствуют входам, а строки выходам блока формирования величины сдвига 8.
Y
1 Y
2 Y
3 Y
4 Y
5 Y
6 Y
7 1 1 0 0 0 0 0 C
1 0 0 1 1 0 0 0 C
2 0 0 0 0 1 1 1 C
3 Тогда
C
1 Y
1 V Y
2, C
2 Y
3 V Y
4, C
3 Y
5 V Y
6 V Y
7.
Построенный в соответствии с полученными выражениями блок формирования величины сдвига 8 приведен на фиг. 6.
Рассмотрим работу устройства при умножении элементов поля GF(2
3), определяемого полиномом F
1(x) x
3 + x + 1. В этом случае сигнал "1" поступает на управляющий вход устройства. Сигнал "1" появляется на выходах 22
3 и 22
4 блока задания обратных связей 7 (на остальных выходах блока задания обратных связей сигнал "0"), а также на выходе 13
1 блока формирования величины сдвига 8 (на остальных выходах блока формирования величины сдвига 8 сигнал "0").
Пусть p
i(x) x
2 + 1, q
i(x) x
2 + x. При этом на информационные входы 1
1-1
5 блока сдвига сомножителя 2 поступает двоичный код 00101, соответствующий коэффициентом полинома p
i(x). В результате на выходах 15
1-15
5 блока сдвига сомножителя 2 появляется код 10100, соответствующий коэффициентам полинома p
i(x). На входы 3
1-3
5 поступает двоичный код 00110, соответствующий коэффициентам полинома q
i(x).
На выходах 10
10-10
50 группы элементов И 16
1-16
5 блока умножения на старший разряд 4 появляются коэффициенты полинома

(x) q

(x)=0(x
4+x
2)=0, т.е. двоичный код 00000.
На выходах группы элементов И 18
11-18
51 (первых входах сумматоров по модулю два 19
11-19
51) блока вычисления полинома 5 появляются коэффициенты полинома q

(x) 0 (x
3 + x
2) 0, т.е. двоичный код 00000. На выходах группы элементов И 21
11-21
51 (вторых входах сумматоров по модулю два 19
11-19
51) появляются коэффициенты полинома b

(x) 0(x
3 + x
2) 0, т.е. двоичный код 00000. На выходах сумматоров по модулю два 19
11-19
51 появляется двоичный код 00000, который поступает (кроме младшего разряда коэффициента при х
о 0) на первые входы сумматоров по модулю два 20
11-20
41. На вторые входы сумматоров по модулю два 20
11-20
41 поступают коэффициенты полинома

(x)x 0 * x 0, т. е. двоичный код 0000. В результате на выходах 10
11-10
51 блока вычисления полинома 5
1 появляются коэффициенты полинома

(x) 0 + 0 0, т.е. двоичный код 00000.
На выходах группы элементов И 18
12-18
52 (первых входах сумматоров по модулю два 19
12-19
52) блока вычисления полинома 5
2 появляются коэффициенты полинома q

(x) 1(x
4 + x
2) x
4 + x
2, т.е. двоичный код 10100. На выходах группы элементов И 21
12-21
52 (вторых входах сумматоров по модулю два 19
12-19
52) появляются коэффициенты полинома b

(x) 0(x
3 + x
2) 0, т.е. двоичный код 00000. На выходах сумматоров по модулю два 19
12-19
52 появляется двоичный код 10100, который поступает (кроме младшего разряда) на первые входы сумматоров по модулю два 20
12-20
42. На вторые входы сумматоров по модулю два 20
12-20
42поступают коэффициенты полинома

(x)x 0 * x 0, т.е. двоичный код 0000. В результате на выходах 10
12-10
52 блока вычисления полинома 5
2появляется вектор коэффициентов полинома S
i(2)(x) x
4 + x
2 + 0 x
4 + x
2, т.е. двоичный код 10100.
На выходах группы элементов И 18
13-18
53 (первых входах сумматоров по модулю два 19
13-19
53) блока вычисления полинома 5
3 появляются коэффициенты полинома q

(x) 1(x
4 + x
2) x
4 + x
2, т.е. двоичный код 10100. На выходах группы элементов И 21
13-21
53 (вторых входах сумматоров по модулю два 19
13-19
53) появляются коэффициенты полинома b

(x) 1(x
3 + x
2) x
3 + x
2, т. е. двоичный код 01100. На выходах сумматоров по модулю два 19
13-19
53 появляется двоичный код 11000, который поступает (кроме младшего разряда) на первые входы сумматоров по модулю два 20
13-20
43. На вторые входы сумматоров по модулю два 20
13-20
43поступают коэффициенты полинома

(x)x (x
4 + x
2)x x
5 + x
3, т. е. двоичный код 0100. В результате на выходах 10
13-10
53 блока вычисления полинома 5 появляются коэффициенты полинома

(x) (x
4 + x
3) + +x
3= x
4, т.е. двоичный код 10000.
На выходах группы элементов И 18
14-18
54 (первых входах сумматоров по модулю два 19
14-19
54) блока вычисления полинома 5
4 появляются коэффициенты полинома q

(x) 0(x
4 + x
2) 0, т.е. двоичный код 00000. На выходах группы элементов И 21
14-21
54 (вторых входах сумматоров по модулю два 19
14-19
54) появляются коэффициенты полинома b

(x) 1(x
3 + x
2) x
3 + x
2, т.е. двоичный код 01100. На выходах сумматоров по модулю два 19
14-19
54 появляется двоичный код 01100, который поступает (кроме младшего разряда) на первые входы сумматоров по модулю два 20
14-20
44. На вторые входы сумматоров по модулю два 20
14-20
44 поступают коэффициенты полинома

(x) x
4 * x x
5, т.е. двоичный код 0000. В результате на выходах 10
14-10
54 блока вычисления полинома 5
4появляются коэффициенты полинома

(x)

(x) x
3+x
2+0 x
3+x
2, т.е. двоичный код 01100.
На выходах 11
1-11
5 блока сдвига произведения 9 появляются коэффициенты полинома r
i(x)

(x)/х
ае
-ai (x
3 + x
2)/x
2 x + 1, т.е. двоичный код 00011.
Технико-экономическую эффективность предлагаемого устройства по отношению к известному возможно определить из повышения быстродействия.
Если в известном устройстве на умножение тратится время
T
1 t
n at, где t
o тактовая частота, t
n время подготовки к процедуре умножения то в предлагаемом устройстве на умножение будет затрачено время
T
2 t
n + t
o.
Эффективность устройства определится формулой
Э Т
1/Т
2.
Формула изобретения
УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ В КОНЕЧНЫХ ПОЛЯХ, содержащее блок умножения на старший разряд и a
l 1 блоков вычисления полиномов (где a
l - максимальная разрядность сомножителей, l число различных полиномов, определяющих конечное поле), причем выходы блока умножения на старший разряд соединены с информационными входами первой группы первого блока вычисления полиномов, информационные входы первой группы

блока вычисления полиномов соединены с информационными выходами (i 1)-го блока вычисления полиномов, отличающееся тем, что в него введены блок сдвига сомножителя, блок задания обратных связей, блок формирования величины сдвига и блок сдвига произведения, причем информационные входы первой группы устройства соединены с соответствующими информационными входами блока сдвига сомножителя,

информационный вход второй группы устройства соединен с информационным входом (a
l i)-го блока вычисления полиномов, а a
l-й информационный вход второй группы устройства соединен с информационным входом блока умножения на старший разряд, управляющие входы устройства соединены с соответствующими входами блока задания обратных связей и блока формирования величины сдвига, выходы которого соединены с управляющими входами блока сдвига сомножителя и блока сдвига произведения, выходы блока задания обратных связей соединены с управляющими входами a
l 1 блоков вычисления полиномов, информационные входы второй группы которых соединены с выходами блока сдвига сомножителя и группой информационных входов блока умножения на старший разряд, выходы (a
l 1)-го блока вычисления полиномов соединены с информационными входами блока сдвига произведения, выходы которого соединены с выходами устройства.
РИСУНКИ
Рисунок 1,
Рисунок 2,
Рисунок 3,
Рисунок 4,
Рисунок 5,
Рисунок 6,
Рисунок 7,
Рисунок 8,
Рисунок 9,
Рисунок 10