Кодирование команд программы доступа к данным - RU2006101156A

Код документа: RU2006101156A

Реферат

1. Устройство для обработки данных, содержащее блок (4) регистров, имеющий один или более регистров, функционирующих для хранения соответствующих значений данных, схему (16) доступа к данным, функционирующую для выполнения операций доступа к данным, передающую одно или более значений данных между упомянутым устройством и адресуемыми ячейками памяти в схеме памяти, и декодер (12) команд, который в ответ на команды программы доступа к данным управляет схемой доступа к данным для выполнения соответствующих операций доступа к данным, причем каждая из команд программы доступа к данным включает в себя поле смещения адреса, которое определяет значение смещения, и включает в себя поле базового регистра, которое определяет регистр базового адреса в блоке регистров и определяет манипуляцию, выполняемую над упомянутыми значением смещения и значением базового адреса, хранимыми в регистре базового адреса, для формирования значения адреса памяти, к которому в схеме памяти должно осуществляться обращение после выполнения команды программы доступа к данным, причем команды программы доступа к данным имеют:

(i) первую форму, включающую в себя поле смещения адреса, имеющее первую длину поля смещения адреса, и

(ii) вторую форму, включающую в себя поле смещения адреса, имеющее вторую длину поля смещения адреса, причем первая длина поля смещения адреса больше, чем вторая длина поля смещения адреса, при этом первая форма обеспечивает определение меньшего количества возможных манипуляций, которые должны выполняться над значением базового адреса и значением смещения, чем вторая форма, причем значение смещения представляет собой значение без знака и манипулирование, поддерживаемое второй формой, но не первой формой, формирует значение измененного адреса путем определения одного из добавления значения смещения к значению базового адреса и вычитания значения смещения из значения базового адреса.

2. Устройство по п.1, в котором упомянутое манипулирование также предоставляет возможность, по меньшей мере, одной из следующих опций для операций доступа к данным: использования значения базового адреса в качестве значения адреса памяти, использования значения измененного адреса в качестве значения адреса памяти, использования значения базового адреса и осуществления обратной записи значения измененного адреса в регистр базового адреса в качестве значения адреса памяти и использования значения измененного адреса и осуществления обратной записи значения измененного адреса в регистр базового адреса в качестве значения адреса памяти.

3. Устройство по любому из пп.1 и 2, имеющее возможность функционировать во множестве режимов, по меньшей мере, один из которых является привилегированным и, по меньшей мере, один из которых является непривилегированным, причем доступы к данным маркируются либо в качестве привилегированных, либо в качестве непривилегированных, давая возможность предоставления коду различных уровней доступа к схеме памяти.

4. Устройство по п.3, в котором, по меньшей мере, одна форма упомянутого манипулирования предоставляет возможность принудительной установки обращения к памяти в качестве непривилегированного независимо от текущего режима.

5. Устройство по п.1, в котором команды программы доступа к данным первой формы функционируют с фиксированным манипулированием, при котором сумма значения базового адреса и значения смещения используется в качестве значения адреса памяти, и значение базового адреса остается неизменным после выполнения.

6. Устройство по п.1, в котором команды программы доступа к данным второй формы включают в себя поле управления режимом манипулирования, определяющее, какая из множества различных манипуляций должна использоваться.

7. Устройство по п.1, в котором наборы манипуляций, обеспечиваемых первой формой и второй формой, являются непересекающимися множествами.

8. Устройство по п.1, в котором упомянутые значения данных передаются между соответствующими регистрами блока регистров и адресуемыми ячейками памяти.

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

(i) первую форму, включающую в себя поле смещения адреса, имеющее первую длину поля смещения адреса, и

(ii) вторую форму, включающую в себя поле смещения адреса, имеющее вторую длину поля смещения адреса, причем первая длина поля смещения адреса больше, чем вторая длина поля смещения адреса, при этом первая форма обеспечивает определение меньшего количества возможных манипуляций, которые должны выполняться над значением базового адреса и значением смещения, чем вторая форма, причем значение смещения представляет собой значение без знака и манипулирование, поддерживаемое второй формой, но не первой формой, формирует значение измененного адреса при помощи определения одного из добавления значения смещения к значению базового адреса и вычитания значения смещения из значения базового адреса.

10. Способ по п.9, в котором манипулирование также предоставляет возможность, по меньшей мере, одной из следующих опций для операций доступа к данным: использования значения базового адреса в качестве значения адреса памяти, использования значения измененного адреса в качестве значения адреса ячейки памяти, использования значения базового адреса и осуществления обратной записи значения измененного адреса в регистр базового адреса в качестве значения адреса ячейки памяти и использования значения измененного адреса и осуществления обратной записи значения измененного адреса в регистр базового адреса в качестве значения адреса ячейки памяти.

11. Способ по п.10, причем упомянутый способ функционирует во множестве режимов, по меньшей мере, один из которых является привилегированным и, по меньшей мере, один из которых является непривилегированным, причем доступы к данным маркируются либо в качестве привилегированных, либо в качестве непривилегированных, давая возможность предоставления коду различных уровней доступа к схеме памяти.

12. Способ по п.11, в котором, по меньшей мере, одна форма упомянутого манипулирования предоставляет возможность принудительной установки обращения к памяти в качестве непривилегированного независимо от текущего режима.

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

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

15. Способ по п.9, в котором наборы манипуляций, обеспечиваемых первой формой и второй формой, являются непересекающимися множествами.

16. Способ по п.9, в котором значения данных передаются между соответствующими регистрами блока регистров и адресуемыми ячейками памяти.

17. Компьютерный программный продукт, имеющий компьютерную программу, функционирующую для управления устройством обработки данных, причем компьютерная программа хранит одно или более значений данных для манипулирования в соответствующих одном или более регистров блока регистров, содержащий код доступа к данным, функционирующий для выполнения операций доступа к данным при помощи схемы доступа к данным для передачи одного или более значений данных между устройством обработки данных и адресуемыми ячейками памяти в схеме памяти, причем упомянутый код доступа к данным включает в себя множество команд программы доступа к данным, каждая из команд программы доступа к данным включает в себя поле смещения адреса, которое определяет значение смещения, и включает в себя поле базового регистра, которое определяет регистр базового адреса в блоке регистров, и определяет манипуляцию, выполняемую над значением смещения и значением базового адреса, хранимыми в регистре базового адреса, для формирования значения адреса памяти, к которому в схеме памяти должно осуществляться обращение после выполнения команды программы доступа к данным, причем команды программы доступа к данным включают в себя, по меньшей мере, одну команду программы доступа к данным, каждой из

(i) первой формы, включающей в себя поле смещения адреса, имеющее первую длину поля смещения адреса, и

(ii) второй формы, включающей в себя поле смещения адреса, имеющее вторую длину поля смещения адреса, причем первая длина поля смещения адреса больше, чем вторая длина поля смещения адреса, при этом первая форма обеспечивает определение меньшего количества возможных манипуляций, которые должны выполняться над упомянутым значением базового адреса и значением смещения, чем вторая форма, значение смещения представляет собой значение без знака и манипулирование, поддерживаемое второй формой, но не первой формой, формирует значение измененного адреса при помощи определения одного из добавления значения смещения к значению базового адреса и вычитания значения смещения из значения базового адреса.

18. Компьютерный программный продукт по п.17, в котором упомянутое манипулирование также предоставляет возможность, по меньшей мере, одной из следующих опций для операций доступа к данным: использования значения базового адреса в качестве значения адреса ячейки памяти, использования значения измененного адреса в качестве значения адреса ячейки памяти, использования значения базового адреса и осуществления обратной записи значения измененного адреса в регистр базового адреса в качестве значения адреса ячейки памяти и использования значения измененного адреса и осуществления обратной записи значения измененного адреса в регистр базового адреса в качестве значения адреса ячейки памяти.

19. Компьютерный программный продукт по п.17, в котором упомянутый способ функционирует во множестве режимов, по меньшей мере, один из которых является привилегированным и, по меньшей мере, один из которых является непривилегированным, причем доступы к данным маркируются в качестве привилегированных либо в качестве непривилегированных для обеспечения коду различных уровней доступа к схеме памяти.

20. Компьютерный программный продукт по п.19, в котором, по меньшей мере, одна форма упомянутого манипулирования предоставляет возможность принудительной установки обращения к памяти в качестве непривилегированного независимо от текущего режима.

21. Компьютерный программный продукт по п.17, в котором команды программы доступа к данным первой формы функционируют с фиксированным манипулированием, при котором сумма значения базового адреса и значения смещения используются в качестве значения адреса ячейки памяти, и значение базового адреса остается неизменным после выполнения.

22. Компьютерный программный продукт по п.17, в котором команды программы доступа к данным второй формы включают в себя поле управления режимом манипулирования для определения, какая из множества различных манипуляций должна использоваться.

23. Компьютерный программный продукт по п.17, в котором наборы манипуляций, обеспечиваемых первой формой и второй формой, являются непересекающимися множествами.

24. Компьютерный программный продукт по п.17, в котором значения данных передаются между соответствующими регистрами блока регистров и адресуемыми ячейками памяти.

Авторы

Заявители

СПК: G06F9/00 G06F9/30

Публикация: 2006-06-10

Дата подачи заявки: 2003-12-30

0
0
0
0

Комментарии

Написать комментарий
Невозможно загрузить содержимое всплывающей подсказки.
Поиск по товарам