ИНСТРУКЦИЯ И ЛОГИЧЕСКАЯ СХЕМА ДЛЯ ВЫПОЛНЕНИЯ ОПЕРАЦИИ СКАЛЯРНОГО ПРОИЗВЕДЕНИЯ

1. Считываемый устройством носитель информации, на котором сохранена инструкция, которая в случае ее выполнения с помощью устройства обеспечивает выполнение устройством способа, содержащего этапы, на которых
определяют результат скалярного произведения, по меньшей мере, двух операндов, каждый из которых имеет множество пакетных значений первого типа данных;
сохраняют результат скалярного произведения.
2. Считываемый устройством носитель по п.1, в котором первый тип данных представляет собой целочисленный тип данных.
3. Считываемый устройством носитель по п.1, в котором первый тип данных представляет собой тип данных с плавающей запятой.
4. Считываемый устройством носитель по п.1, в котором каждый из этих, по меньшей мере, двух операндов имеет только два пакетных значения.
5. Считываемый устройством носитель по п.1, в котором каждый из этих, по меньшей мере, двух операндов имеет только четыре пакетных значения.
6. Считываемый устройством носитель по п.1, в котором каждое из множества пакетных значений представляет собой значение с одиночной точностью и должно быть представлено 32 битами.
7. Считываемый устройством носитель по п.1, в котором каждое из множества пакетных значений представляет собой значение с двойной точностью и должно быть представлено 64 битами.
8. Считываемый устройством носитель по п.1, в котором эти, по меньшей мере, два операнда и результат скалярного произведения должны быть сохранены в, меньшей мере, в двух регистрах, предназначенных для сохранения вплоть 128 битов данных.
9. Устройство, содержащее
первую логическую схему для выполнения инструкции скалярного произведения типа "один поток команд, много потоков данных" (ОКМД) по, по меньшей мере, двум пакетным операндам первого типа данных.
10. Устройство по п.9, в котором инструкция скалярного произведения ОКМД включает в себя индикатор операнда источника, индикатор операнда назначения, по меньшей мере, один индикатор непосредственного значения.
11. Устройство по п.10, в котором индикатор операнда источника включает в себя адрес регистра источника, имеющего множество элементов, для сохранения множества пакетных значений.
12. Устройство по п.11, в котором индикатор операнда назначения включает в себя адрес регистра назначения, имеющего множество элементов, для сохранения множества пакетных значений.
13. Устройство по п.12, в котором индикатор непосредственного значения включает в себя а множество битов управления.
14. Устройство по п.9, в котором, по меньшей мере, каждый из двух пакетных операндов представляет собой целые числа с двойной точностью.
15. Устройство по п.9, в котором, по меньшей мере, каждый из двух пакетных операндов представляет собой значения с двойной точностью, с плавающей запятой.
16. Устройство по п.9, в котором, по меньшей мере, каждый из двух пакетных операндов представляет собой целые числа с одиночной точностью.
17. Устройство по п.9, в котором, по меньшей мере, каждый из двух пакетных операндов представляет собой значения с одиночной точностью, с плавающей запятой,
18. Система, содержащая
первое запоминающее устройство, предназначенное для сохранения инструкции скалярного произведения типа "один поток команд - много потоков данных" (ОКМД);
процессор, соединенный с первым запоминающим устройством для выполнения инструкции скалярного произведения ОКМД.
19. Система по п.18, в которой инструкция скалярного произведения ОКМД включает в себя индикатор операнда источника, индикатор операнда назначения, и, по меньшей мере, один индикатор непосредственного значения.
20. Система по п.19, в которой индикатор операнда источника включает в себя адрес регистра источника, имеющий множество элементов, для сохранения множества пакетных значений.
21. Система по п.20, в которой индикатор операнда назначения включает в себя адрес регистра назначения, имеющий множество элементов, для сохранения множества пакетных значений,
22. Система по п.21, в которой индикатор непосредственного значения включает в себя множество битов управления.
23. Система по п.18, в которой, по меньшей мере, каждый из двух пакетных операндов представляет собой целые числа с двойной точностью.
24. Система по п.18, в которой, по меньшей мере, каждый из двух пакетных операндов представляет собой значения с двойной точностью, с плавающей запятой.
25. Система по п.18, в которой, по меньшей мере, каждый из двух пакетных операндов представляет собой целые числа с одиночной точностью.
26. Устройство по п.18, в которой, по меньшей мере, каждый из двух пакетных операндов представляет собой значения с одиночной точностью с плавающей запятой.
27. Способ, содержащий этапы, на которых
умножают первый элемент данных первого пакетного операнда и первый элемент данных второго пакетного операнда для генерирования первого произведения;
умножают второй элемент данных первого пакетного операнда и второй элемент данных второго пакетного операнда для генерирования второго произведения;
суммируют первое произведение со вторым произведением для генерирования результата скалярного произведения.
28. Способ по п.27, дополнительно содержащий: умножают третий элемент данных первого пакетного операнда и третий элемент данных второго пакетного операнда для генерирования третьего произведения.
29. Способ по п.28, дополнительно содержащий следущее: умножают четвертый элемент данных первого пакетного операнда и четвертый элемент данных второго пакетного операнда, для генерирования четвертого произведения.
30. Процессор, содержащий
регистр источника, предназначенный для сохранения первого пакетного операнда, включающий в себя первое и второе значения данных;
регистр назначения, предназначенный для сохранения второго пакетного операнда, включающий в себя третье и четвертое значения данных;
логическую схему для выполнения инструкции скалярного произведения типа "один поток команд - много потоков данных" (ОКМД) в соответствии со значением управления, обозначенным инструкцией скалярного произведения,
причем логическая схема содержит первый умножитель для умножения первого и третьего значений данных для генерирования первого произведения, второй умножитель, для умножения второго и четвертого значений данных, для генерирования второго произведения, причем логическая схема дополнительно включает в себя, по меньшей мере, один сумматор, для суммирования первого и второго произведений для получения, по меньшей мере, одной суммы.
31. Процессор по п.30, в котором логическая схема дополнительно включает в себя первый мультиплексор для выбора между первым произведением и нулевым значением, в зависимости от первого бита значения управления.
32. Процессор по п.31, в котором логическая схема дополнительно включает в себя второй мультиплексор для выбора между вторым произведением и нулевым значением в зависимости от второго бита значения управления.
33. Процессор по п.32, в котором логическая схема дополнительно включает в себя третий мультиплексор для выбора между суммой и нулевым значением для сохранения в первом элементе регистра назначения.
34. Процессор по п.33, в котором логическая схема дополнительно включает в себя четвертый мультиплексор для выбора между суммой и нулевым значением для сохранения во втором элементе регистра назначения.
35. Процессор по п.30, в котором первое, второе, третье и четвертое значения данных представляют собой 64-битные целочисленные значения.
36. Процессор по п.30, в котором первое, второе, третье, четвертое значения данных представляют собой 64-битные значения с плавающей запятой.
37. Процессор по п.30, в котором первое, второе, третье и четвертое значения данных представляют собой 32-битные целочисленные значения.
38. Процессор по п.30, в котором первое, второе, третье и четвертое значения данных представляют собой 32-битные значения с плавающей запятой.
39. Процессор по п.30, в котором регистры источника и назначения предназначены для сохранения, по меньшей мере, 128 битов данных.