КОМАНДА ВЕКТОРНОГО ТИПА НА ПОЛЕ ГАЛУА ПЕРЕМНОЖЕНИЯ, СУММИРОВАНИЯ И НАКОПЛЕНИЯ

1. Компьютерная система для исполнения машинной команды в центральном процессорном устройстве, содержащая запоминающее устройство и процессор, связанный с запоминающим устройством, причем компьютерная система сконфигурирована для осуществления способа, включающего:
получение процессором для исполнения машинной команды, определенной для исполнения компьютером в соответствии с архитектурой компьютера и содержащей:
по меньшей мере одно поле кода операции для предоставления кода операции, идентифицирующего операцию векторного типа на поле Галуа перемножения, суммирования и накопления;
поле первого регистра, используемое для обозначения первого регистра, содержащего первый операнд;
поле второго регистра, используемое для обозначения второго регистра, содержащего второй операнд;
поле третьего регистра, используемое для обозначения третьего регистра, содержащего третий операнд;
поле четвертого регистра, используемое для обозначения четвертого регистра, содержащего четвертый операнд; и исполнение машинной команды, включающее:
перемножение одного или нескольких элементов второго операнда с одним или несколькими элементами третьего операнда с использованием умножения без переноса для получения набора произведений;
выполнение первой математической операции над указанным набором произведений для получения первого результата;
выполнение второй математической операции над первым результатом и одним или несколькими выбранными элементами четвертого операнда для получения второго результата; и
помещение второго результата в первый операнд.
2. Компьютерная система по п. 1, в которой перемножение включает умножение каждого элемента второго операнда на соответствующий элемент третьего операнда с использованием умножения без переноса с получением в результате четной-нечетной пар произведений, длина которых равна удвоенной длине элементов.
3. Компьютерная система по п. 2, в которой первая математическая операция содержит операцию "исключающее ИЛИ", причем для получения первого результата четная-нечетная пары произведений с длиной, равной удвоенной длине элементов, добавляются друг к другу операцией "исключающее ИЛИ".
4. Компьютерная система по п. 3, в которой вторая математическая операция содержит операцию "исключающее ИЛИ", причем для получения второго результата первый результат добавляется операцией "исключающее ИЛИ" к соответствующему элементу двойной длины четвертого операнда.
5. Компьютерная система по п. 1, в которой машинная команда также содержит поле маски для указания длины элементов одного или нескольких из первого операнда, второго операнда, третьего операнда, четвертого операнда машинной команды.
6. Компьютерная система по п. 5, в которой поле маски определяет длину элементов второго операнда и третьего операнда машинной команды, а длина элементов первого операнда и четвертого операнда равна удвоенной длине элементов второго операнда и третьего операнда.
7. Компьютерная система по п. 1, в которой машинная команда также содержит поле расширения, используемое для обозначения одного или нескольких регистров, причем поле первого регистра объединено с первой частью поля расширения для обозначения первого регистра, поле второго регистра объединено со второй частью поля расширения для обозначения второго регистра, поле третьего регистра объединено с третьей частью поля расширения для обозначения третьего регистра, и поле четвертого регистра объединено с четвертой частью поля расширения для обозначения четвертого регистра.
8. Способ исполнения машинной команды в центральном процессорном устройстве, включающий:
получение процессором для исполнения машинной команды, определенной для исполнения компьютером в соответствии с архитектурой компьютера и содержащей:
по меньшей мере одно поле кода операции для предоставления кода операции, идентифицирующего операцию векторного типа на поле Галуа перемножения, суммирования и накопления;
поле первого регистра, используемое для обозначения первого регистра, содержащего первый операнд;
поле второго регистра, используемое для обозначения второго регистра, содержащего второй операнд;
поле третьего регистра, используемое для обозначения третьего регистра, содержащего третий операнд;
поле четвертого регистра, используемое для обозначения четвертого регистра, содержащего четвертый операнд; и исполнение машинной команды, включающее:
перемножение одного или нескольких элементов второго операнда с одним или несколькими элементами третьего операнда с использованием умножения без переноса для получения набора произведений;
выполнение первой математической операции над указанным набором произведений для получения первого результата;
выполнение второй математической операции над первым результатом и одним или несколькими выбранными элементами четвертого операнда для получения второго результата; и
помещение второго результата в первый операнд.
9. Способ по п. 8, в котором машинная команда также содержит поле маски для указания длины элементов одного или нескольких из первого операнда, второго операнда, третьего операнда, четвертого операнда машинной команды.
10. Способ по п. 8, в котором машинная команда также содержит поле расширения, используемое для обозначения одного или нескольких регистров, причем поле первого регистра объединено с первой частью поля расширения для обозначения первого регистра, поле второго регистра объединено со второй частью поля расширения для обозначения второго регистра, поле третьего регистра объединено с третьей частью поля расширения для обозначения третьего регистра, и поле четвертого регистра объединено с четвертой частью поля расширения для обозначения четвертого регистра.
11. Компьютерный программный продукт для исполнения машинной команды в центральном процессорном устройстве, содержащий машиночитаемую среду хранения данных, из которой данные могут считываться схемой обработки и в которой хранятся команды, исполняемые схемой обработки для осуществления способа, включающего:
получение процессором для исполнения машинной команды, определенной для исполнения компьютером в соответствии с архитектурой компьютера и содержащей:
по меньшей мере одно поле кода операции для предоставления кода операции, идентифицирующего операцию векторного типа на поле Галуа перемножения, суммирования и накопления;
поле первого регистра, используемое для обозначения первого регистра, содержащего первый операнд;
поле второго регистра, используемое для обозначения второго регистра, содержащего второй операнд;
поле третьего регистра, используемое для обозначения третьего регистра, содержащего третий операнд;
поле четвертого регистра, используемое для обозначения четвертого регистра, содержащего четвертый операнд; и исполнение машинной команды, включающее:
перемножение одного или нескольких элементов второго операнда с одним или несколькими элементами третьего операнда с использованием умножения без переноса для получения набора произведений;
выполнение первой математической операции над указанным набором произведений для получения первого результата;
выполнение второй математической операции над первым результатом и одним или несколькими выбранными элементами четвертого операнда для получения второго результата; и
помещение второго результата в первый операнд.
12. Компьютерный программный продукт по п. 11, в котором перемножение включает умножение каждого элемента второго операнда на соответствующий элемент третьего операнда с использованием умножения без переноса с получением в результате четной-нечетной пар произведений, длина которых равна удвоенной длине элементов.
13. Компьютерный программный продукт по п. 12, в котором умножение без переноса имеет порядок два.
14. Компьютерный программный продукт по п. 12, в котором первая математическая операция содержит операцию "исключающее ИЛИ", причем для получения первого результата четная-нечетная пары произведений с длиной, равной удвоенной длине элементов, добавляются друг к другу операцией "исключающее ИЛИ".
15. Компьютерный программный продукт по п. 14, в котором вторая математическая операция содержит операцию "исключающее ИЛИ", причем для получения второго результата первый результат добавляется операцией "исключающее ИЛИ" к соответствующему элементу двойной длины четвертого операнда.
16. Компьютерный программный продукт по п. 15, в котором указанное помещение включает помещение второго результата в элемент двойной длины первого операнда.
17. Компьютерный программный продукт по п. 11, в котором машинная команда также содержит поле маски для указания длины элементов одного или нескольких из первого операнда, второго операнда, третьего операнда, четвертого операнда машинной команды.
18. Компьютерный программный продукт по п. 17, в котором поле маски определяет длину элементов второго операнда и третьего операнда машинной команды.
19. Компьютерный программный продукт по п. 18, в котором длина элементов первого операнда и четвертого операнда равна удвоенной длине элементов второго операнда и третьего операнда.
20. Компьютерный программный продукт по п. 11, в котором машинная команда также содержит поле расширения, используемое для обозначения одного или нескольких регистров, причем поле первого регистра объединено с первой частью поля расширения для обозначения первого регистра, поле второго регистра объединено со второй частью поля расширения для обозначения второго регистра, поле третьего регистра объединено с третьей частью поля расширения для обозначения третьего регистра, и поле четвертого регистра объединено с четвертой частью поля расширения для обозначения четвертого регистра.