ЗАГРУЗКА ПАРЦИАЛЬНОЙ ШИРИНЫ, ЗАВИСЯЩАЯ ОТ РЕЖИМА, В ПРОЦЕССОРАХ С РЕГИСТРАМИ С БОЛЬШИМ ЧИСЛОМ РАЗРЯДОВ, СПОСОБЫ И СИСТЕМЫ

1. Процессор содержащий:
регистр, имеющий ширину;
блок декодирования для приема инструкции загрузки парциальной ширины, причем инструкция загрузки парциальной ширины указывает ячейку памяти в качестве операнда источника и указывает регистр в качестве операнда назначения;
подсистему памяти, соединенную с блоком декодирования, причем подсистема памяти, в ответ на инструкцию загрузки парциальной ширины, загружает данные из указанной ячейки памяти в процессор; и
блок записи в регистр, соединенный с подсистемой памяти и регистром, причем блок записи в регистр, в ответ на инструкцию загрузки парциальной ширины, записывает по меньшей мере часть загруженных данных на парциальной ширине регистра, и завершает запись в регистр с набором разрядов, хранящихся на оставшейся ширине регистра, которые имеют значения разрядов, которые зависят от режима загрузки парциальной ширины процессора, при этом инструкция загрузки парциальной ширины не указывают режим загрузки парциальной ширины.
2. Процессор по п. 1, в котором блок записи в регистр в режиме загрузки парциальной ширины должен записывать все нули в качестве набора разрядов на оставшейся ширине регистра и во втором режиме загрузки парциальной ширины не должен записывать все нули в качестве набора разрядов на оставшейся ширине регистра.
3. Процессор по п. 2, в котором блок записи в регистр во втором режиме загрузки парциальной ширины должен записывать разряды с расширением знакового разряда в качестве набора разрядов на оставшейся ширине регистра.
4. Процессор по п. 2, в котором блок записи в регистр во втором режиме загрузки парциальной ширины должен завершать запись в регистр с набором разрядов, который первоначально находился на оставшейся ширине, прежде чем декодер примет инструкцию загрузки парциальной ширины, которая хранится в виде набора разрядов на оставшейся ширине регистра.
5. Процессор по п. 1, дополнительно содержащий по меньшей мере один разряд для указания режима загрузки парциальной ширины, в котором процессор должен осуществлять доступ по меньшей мере к одному разряду для определения режима загрузки парциальной ширины и должен выбирать соответствующий метод, который определяет значения разрядов для набора разрядов.
6. Процессор по п. 5, в котором по меньшей мере один разряд находится в регистре процессора и доступен приложению.
7. Процессор по п. 1, в котором ширина регистра является по меньшей мере такой широкой, как адреса памяти, используемые процессором для доступа к памяти, и в котором парциальная ширина регистра представляет собой только часть ширины регистра.
8. Процессор по п. 7, в котором процессор выбран один из:
процессора, который представляет собой процессор с 64-разрядной архитектурой, который использует 64-разрядные адреса памяти, и в котором парциальная ширина регистра равна 32 разрядам; и
процессора, который представляет собой процессор с 128-разрядной архитектурой, который использует 128-разрядные адреса памяти, и в котором парциальная ширина регистра равна 64 разрядам.
9. Процессор по п. 1, в котором процессор позволяет приложению пользовательского уровня изменять режим загрузки парциальной ширины.
10. Процессор по п. 1, в котором процессор позволяет по меньшей мере одному из: операционной системы и монитора виртуальных машин изменять режим загрузки парциальной ширины, но не позволяет приложениям пользовательского уровня изменять режим загрузки парциальной ширины.
11. Процессор по п. 1, в котором процессор имеет, набор инструкций, который включает в себя инструкцию для изменения режима загрузки парциальной ширины.
12. Процессор по п. 1, в котором блок записи в регистр в режиме загрузки парциальной ширины должен записывать нули в качестве набора разрядов на оставшейся ширине регистра и дополнительно содержащий:
блок процессора для изменения режима загрузки парциальной ширины во втором режиме загрузки парциальной ширины в одном из: прерывания и перехода от приложения к операционной системе.
13. Способ, выполняемый процессором, содержащий:
прием инструкции загрузки парциальной ширины, причем инструкция загрузки парциальной ширины указывает ячейку памяти в качестве операнда источника и указывает регистр в качестве операнда назначения;
загрузку данных из указанной ячейки памяти в процессор в ответ на инструкцию загрузки парциальной ширины;
запись по меньшей мере части загруженных данных на парциальной ширине регистра в ответ на инструкцию загрузки парциальной ширины; и
завершение записи в регистр с набором разрядов, хранящихся на оставшейся ширине регистра, которые имеют значения разрядов, которые зависят от режима загрузки парциальной ширины процессора, причем инструкция загрузки парциальной ширины не указывает режим загрузки парциальной ширины.
14. Способ по п. 13, в котором завершение записи в регистр содержит запись нулей в качестве набора разрядов на оставшейся ширине регистра в режиме загрузки парциальной ширины, и в котором во втором другом режиме загрузки парциальной ширины разряды с расширением знакового разряда вместо нулей будут записываться на оставшейся ширине регистра.
15. Способ по п. 13, в котором завершение записи в регистр содержит запись нулей в качестве набора разрядов на оставшейся ширине регистра в режиме загрузки парциальной ширины, и в котором во втором другом режиме загрузки парциальной ширины набор разрядов первоначально находившихся в оставшейся ширине будет сохраняться на оставшейся ширине регистра.
16. Способ по п. 13, дополнительно содержащий:
доступ по меньшей мере к одному разряду для определения режима загрузки парциальной ширины; и
выбор метода, соответствующего режиму загрузки парциальной ширины, который, определяет значения разрядов для набора разрядов.
17. Способ по п. 16, в котором доступ по меньшей мере к одному разряду содержит доступ по меньшей мере к одному разряду в регистре процессора, доступном для приложения.
18. Способ по п. 13, в котором запись парциальной ширины регистра содержит запись только подмножества ширины регистра, и в котором регистр по меньшей мере является таким широким, как адреса памяти, используемые процессором для доступа к памяти.
19. Способ по п. 18, в котором запись парциальной ширины регистра содержит одно из:
записи 32 разрядов регистра с нулями в оставшейся части регистра, и где адреса памяти, используемые процессором для получения доступа к памяти, имеют 64 разряда; и
записи 64 разрядов регистра с нулями в оставшейся части регистра, и где адреса памяти, используемые процессором для получения доступа к памяти, имеют 128 разрядов.
20. Способ по п. 13, дополнительно содержащий:
прием сигнала управления из приложения пользовательского уровня для изменения режима загрузки парциальной ширины; и
изменение режима загрузки парциальной ширины после приема сигнала управления.
21. Способ по п. 13, дополнительно содержащий:
прием сигнала управления из одного из: операционной системы и монитора виртуальных машин для изменения режима загрузки парциальной ширины;
изменение режима загрузки парциальной ширины после приема сигнала управления из упомянутого одного из: операционной системы и монитора виртуальных машин; и
предотвращение приложений пользовательского уровня от изменения режима загрузки парциальной ширины.
22. Изделие промышленного производства, содержащее, постоянный машиночитаемый носитель информации, хранящий набор инструкций, которые при их исполнении машиной предписывают машине выполнять операции, содержащие:
проверку метаданных программного модуля, включающую проверку указания режима загрузки парциальной ширины процессора, который будет использоваться процессором для выполнения инструкции загрузки парциальной ширины, причем инструкция загрузки парциальной ширины указывает ячейку памяти в качестве операнда источника и указывает регистр в качестве операнда назначения; и
изменение режима загрузки парциальной ширины процессора на указанный режим загрузки парциальной ширины, причем изменение режима загрузки парциальной ширины должно управлять изменением значений разрядов, которые будут сохраняться процессором в части указанного регистра, который не будет использоваться для хранения парциальной ширины данных, загруженных из памяти.
23. Изделие промышленного производства по п. 22, в котором набор инструкций дополнительно содержит инструкции, которые при их исполнении машиной предписывают машине выполнять операции, содержащие:
поддержание метаданных, показывающих какие различные программные модули должны использовать какие различные режимы загрузки парциальной ширины, включая то, что программный модуль должен использовать режим загрузки парциальной ширины; и
после обработки прерывания, изменение режима загрузки парциальной ширины процессора на указанный режим загрузки парциальной ширины совместно с переходом обратно к исполнению кода из программного модуля.
24. Система для обработки команд, содержащая:
межсоединение;
динамическое оперативное запоминающее устройство (DRAM), соединенное с межсоединением; и
процессор, соединенный с межсоединением, причем процессор содержит:
регистр, имеющий ширину;
блок декодирования для приема инструкции, причем инструкция указывает ячейку памяти DRAM в качестве операнда источника и указывает регистр в качестве операнда назначения;
подсистему памяти, соединенную с блоком декодирования, причем подсистема памяти, в ответ на инструкцию, загружает данные из указанной ячейки памяти в процессор; и
блок, соединенный с подсистемой памяти и регистром, причем блок, в ответ на инструкцию, записывает по меньшей мере часть загруженных данных на парциальной ширине регистра, и завершает запись в регистр с набором разрядов, хранящихся на оставшейся ширине регистра, которые имеют значения разрядов, которые зависят от режима загрузки парциальной ширины процессора, при этом инструкция не указывают режим загрузки парциальной ширины.
25. Система по п. 24, в которой блок в режиме загрузки парциальной ширины должен записывать все нули в качестве набора разрядов на оставшейся ширине регистра и во втором режиме загрузки парциальной ширины не должен записывать все нули в качестве набора разрядов на оставшейся ширине регистра.