ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 25.12.2021
Просмотров: 5266
Скачиваний: 8
Форматы команд
Рис. 2.65.
Метод формализации и систематизации
•
базе метода группировки. Для упрощения декодирования и повышения про-
изводительности все операции группируются (арифметические, логические,
передачи управления и т. д.). Выбор состава операций во многом зависит от
принципа группировки и возможности извлечения из нее реальных выгод.
• На основе восходящей совместимости в рамках семейства вычислительных
машин. Новая система операций должна быть надмножеством старой системы,
причем пересечение множеств должно быть существенным.
• Опираясь на требования пользователя.
• На основе метода условной интерпретации. С учетом соотношения «стоимость/
производительность» определенные команды реализуются аппаратно или мик-
ропрограммно. Как интерпретация команд, так и метод их реализации выбира-
ются из условий полезности данных команд, стоимости и
В качестве примеров рассмотрим два способа решения задачи выбора оптималь-
ной системы операций, соответствующие упомянутым выше принципам.
Выбор системы операций на основе существующих аналогов
Заданы алгоритмы
А.
Необходимо выбрать функционально полную систему опе-
раций, удовлетворяющую ограничениям на время реализации алгоритмов
А
и аппаратную сложность
(С =
С
доп
).
Сначала определяется множество ВМ-аналогов, успешно применяемых для
выполнения алгоритмов, близких к заданным
для которого составляются пол-
ный
F
и базовый наборы операций. Полный набор операций
f
2
...,
f
n
} явля-
k
ется объединением систем операций всех машин-аналогов, то есть
F
объединение
F
i
от 1 до k, где
k
— количество аналогов. В него могут быть включены дополнительные операции,
наличие которых необходимо по тем или иным соображениям. Базовый набор
F
Б
=
включает в себя только те операции набора
F,
которые реализова-
ны в большинстве аналогов, то есть здесь
т<п.
Полный набор
F
соответствует
максимально возможной системе операций, а базовый набор
F
Б
—
минимально не-
обходимой
Поиск «оптимальной» СО осуществляется в интервале от
F
Б
до
F.
В качестве
начального приближения выбирается набор
F
Б
.
Производится оценочный расчет
реализуемости СО в пределах заданных ограничений
функциональ-
ных возможностей и функциональной независимости системы операций.
команд
Глава 2. Архитектура системы команд
Требуемая длительность
(2.20). Поиск оптимального варианта реализации каждой из операций осуществ-
по формуле
операций определяется исходя из
реальная длительность опера-
ции, а для всего множества операций — по критерию минимума среднеквадрати-
ляется по критерию
ческого отклонения
где
S —
множество рассматриваемых вариантов реализации СО.
При их
Далее проверяется выполнение заданных ограничений
выполнении набор
F
Б
пополняется
из (для улучшения функциональ-
ных возможностей СО), в противном случае — сокращается. Выбор операций для
корректировки
F
Б
осуществляется следующим образом. Если принять, что полный
набор
F
обеспечивает эффективную реализацию алгоритмов, то функциональные
возможности
можно оценивать длиной
D
программы из набора операций
F
Б
,
интерпретирующей операции из набора
F,
не попавшие в
F
Б
набора
Функциональная независимость операции
F
Б
оценивается количеством опера-
ций или шагов
программы описания
из операции
через другие операции этого набора
Показатели
образуют вектор с
т.
При
из-за невы-
полнения ограничения
из набора исключается операция, которая
лее просто выражается через другие операции
(имеет минимальное значение
что приводит к минимальным потерям производительности (минимальному
увеличению
D).
При расширении из-за невыполнения
из-за
улучшить функциональные возможности СО) в наоор вклю-
чается операция, обеспечивающая максимальное уменьшение времени
Т
(макси-
мальное уменьшение показателя
D).
Если таких операций в наборе
то
из них
операция с наименьшим значением так как ее реализация
требует минимальных аппаратных затрат.
Описанная последовательность действий повторяется многократно до получе-
ния системы операций, удовлетворяющей заданным ограничениям.
Выбор системы операций на основе структурирования алгоритмов
Метод структурирования алгоритмов предполагает следующую формулировку
задачи выбора системы операций: необходимо выбрать такую систему
которая
обеспечивает реализацию алгоритма
А
за заданное время
Т=
при минималь-
ной стоимости ВМ.
Иерархия операций
функционально полных для алгоритма
А,
может
быть определена процедурой структурирования [22], сводящейся к следующему.
Алгоритм
А
как один оператор, реализующий операцию над
исходными данными с целью получения требуемых результатов, то есть =
Затем оператор разделяется на
— программируется последовательностью
более простых операторов. Последовательное применение процедуры структури-
рования (разделения оператора на более простые операторы) позволяет выявить
Контрольные вопросы 1 2 3
будет представлять количество операций, выполняемых при одной реализации
алгоритма, запрограммированного в терминах
F
i
. Характеристики элементной базы
позволяют задать приближенное значение средней длительности т
i
операции в ВМ.
С учетом этого время выполнения алгоритма на основе
F
i
составит
Т
i
=
что дает
возможность поставить в соответствие иерархии систем операций
затраты
времени на реализацию алгоритма
Т
1
...,
причем
Т
1
< ... <
Можно предполо-
жить, что минимум аппаратных затрат достигается при принадлежит
{F
1
...,
обеспечива-
ющей время реализации алгоритма
Т
n
,
максимально близкое к заданному значе-
В силу сказанного, выбор системы операций сводится к нахождению
такой системы
для
которой разность (
T
доп
-
имеет минимальное положи-
тельное значение.
Контрольные вопросы
Какие характеристики вычислительной машины охватывает понятие «архитек-
тура системы команд»?
2. Охарактеризуйте эволюцию архитектур системы команд вычислительных ма-
шин.
3. В чем состоит проблема семантического разрыва?
4. Поясните различия в подходах по преодолению семантического разрыва, при-
меняемых в ВМ с CISC- и RISC-архитектурами.
5. Какая форма записи математических выражений наиболее соответствует сте-
ковой архитектуре системы команд и почему?
6. Какие средства используются для ускорения доступа к вершине стека в ВМ со
стековой архитектурой?
7. Чем обусловлено возрождение интереса к стековой архитектуре?
8. Какие особенности аккумуляторной архитектуры можно считать ее достоин-
ствами и недостатками?
9. Какие доводы можно привести
и против увеличения числа регистров общего
назначения в ВМ с регистровой архитектурой системы команд?
10. Почему для ВМ с RISC-архитектурой наиболее подходящей представляется
АСК с выделенным доступом к
Какую позицию запятой в формате с фиксированной запятой можно считать
общепринятой?
12. Чем в формате с фиксированной запятой заполняются избыточные
разряды?
системы операций
мым построить иерархию операций
и тем
Для каждой операции в можно определить количество ее выполнений при
одной реализации алгоритма. Тогда сумма
Глава 2. Архитектура системы команд
Какое минимальное количество полей должен содержать формат с плавающей
запятой?
14. Как в формате с плавающей запятой решается проблема работы с порядками,
имеющими разные знаки?
15. В чем состоит особенность трактовки нормализованной мантиссы в стандарте
IEEE 754?
16. От чего зависят точность и диапазон представления чисел в формате с плаваю-
щей запятой?
17. Чем обусловлено появление форматов с упакованными числами в современ-
ных микропроцессорах?
18. Какие факторы влияют на выбор разрядности целых чисел?
19. Сказывается ли на производительности ВМ порядок следования в памяти бай-
тов «длинного» числа и выбор адреса, с которого начинается запись числа?
20. По какому признаку при передаче потока десятичных чисел можно опреде-
лить окончание одного числа и начало следующего?
21. Какой общий принцип лежит в основе различных таблиц кодировки сим-
волов?
22. Чем обусловлен переход от кодировки ASCII к кодировке Unicode?
23. В чем состоит особенность обработки логических данных?
24. Какие трактовки включает в себя понятие «строка»?
25. Перечислите способы представления графической информации и охарактери-
зуйте особенности каждого из них.
26. Каким образом в вычислительной машине представляется аудиоинформация?
27. Какой вид команд пересылки данных характерен для ВМ с RISC-архитек-
турой?
28. Чем вызвана необходимость заполнения освободившихся разрядов значением
знакового разряда при арифметическом сдвиге вправо?
29. чем состоит особенность
и в каком формате должны быть пред-
ставлены операнды?
30. Что такое «арифметика с насыщением» и где она применяется?
31. Какие виды команд относят к командам ввода/вывода?
32. Какие виды команд условного перехода обычно доминируют в реальных про-
граммах?
33. Какие факторы определяют выбор формата команд?
34. Перечислите возможные пути сокращения длины кода команды.
35. Какая особенность фон-неймановской архитектуры позволяет отказаться от
указания в команде адреса очередной команды?
36. Какие
необходимо учитывать при выборе оптимальной адресности
команд?
37. С какими ограничениями связано использование непосредственной адресации?
Контрольные вопросы
38. В каких случаях может быть удобна многоуровневая косвенная адресация?
39. Какие преимущества дает адресация относительно счетчика команд?
40. В чем проявляются сходство и различия между базовой и индексной адре-
сацией?
41. В чем состоит сущность автоиндексирования и в каких ситуациях оно приме-
няется?
42. С какой целью применяется адресация с масштабированием?
43. Какие способы адресации переходов используются в Командах управления по-
током команд?
44. Как можно оценить эффективность системы операций при разработке архи-
тектуры системы команд?
45. Охарактеризуйте основные методики проектирования и оценки системы ко-
манд.