Помощь в учёбе, очень быстро...
Работаем вместе до победы

Программная модель процессоров семейства PDP-11

РефератПомощь в написанииУзнать стоимостьмоей работы

Команды структуры «a» и «b» — это тоже двухадресные команды, но в качестве одного из операндов используется содержимое РОНа. В команде структуры «b» второй адрес задается смещением относительно счетчика команд. Это структура команды выхода из цикла. Содержимое указанного в команде РОНа автоматически уменьшается на размер выполненной команды. Пока содержимое РОНа не равно нулю, происходит передача… Читать ещё >

Программная модель процессоров семейства PDP-11 (реферат, курсовая, диплом, контрольная)

Отображение оперативной памяти

Семейство ЭВМ PDP-11 — это первый ряд 16-битных программно совместимых моделей ЭВМ от микро до супер-мини. Для многих последующих высокопроизводительных ЭВМ архитектура PDP-11 стала стартовой. Корпорация DEC, развивая эту архитектуру, стала лидирующей на рынке мощных 64-битных рабочих станций на базе VAX-кластеров и моделей МП серии Alpha.

Максимальный размер математической памяти моделей ЭВМ PDP-11 — 216 = 65 536 байт (64 Кбайт) или 215= 32 768 двухбайтных слов (32 К). Но максимальный размер физической памяти в четыре раза больше и может достигать до — 218 = 262 144 байта (256 Кбайт) или 131 072 слова (256 К).

Нумерация бит в байтах и словах — обратная (с младших разрядов), слова и двойные слова адресуются по номеру байта в слове (двойном слове).

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

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

Под адреса портов выделены 4 Кбайт старших адресов пространства памяти.

Регистровый файл

В регистровый файл входят:

  • · регистры общего назначения (РОНы),
  • · регистр слова состояния процессора.

Регистры общего назначения (РОНы)

Это — восемь шестнадцатибитных регистров, шесть из них используются только при явной адресации, два (R6 и R7) специализированы и, кроме явной адресации, могут использоваться по умолчанию.

R6 — шестнадцатибитный регистр указателя аппаратного стека SP (Stack Pointer). Используется аппаратурой процессора при прерываниях и передаче управления для сохранения адреса и состояния программы.

R7- шестнадцатибитный счетчик команд PC (Program Counter). Вычисляет адрес следующей команды. Доступен программам пользователя по записи и чтению.

Регистр слова состояния процессора

Шестнадцатибитный регистр слова состояния процессора PS (Processor Status) (рис. 4.2) содержит поля:

  • · Текущего и предыдущего режима работы (биты с 12 по 15 Поле задает режимы: пользователь/система. Используется механизмом защиты программ. В режиме «пользователь» запрещено использование ряда «привилегированных» команд.
  • · Приоритет процессора (биты с пятого по седьмой). Задает приоритет процессора. Процессор может иметь приоритет от 0 до 7. Приоритет процессора используется в арбитраже системного интерфейса как уровень маскирования запросов прерывания от внешних устройств.
  • · Бит слежения Т (Trap, четвертый бит). При включенном бите T после выполнении каждой команды (кроме RTT) производится процедура прерывания.
  • · Четыре бита кода условий (биты с нулевого по третий):
    • 1. С — «перенос» ,
    • 2. V — «переполнение» ,
    • 3. Z — «результат нулевой» ,
    • 4. N — «результат отрицательный» .

Коды условий используются при выполнении команд ветвления.

Структура данных

Данные представляются в двух видах: данные со знаком и данные без знака. Данные со знаком могут быть в форме с фиксированной запятой или в форме с плавающей запятой. Данные без знака — это адреса или алфавитно-цифровые символы.

Данные со знаком с фиксированной запятой — это целые числа в виде байтов, слов или двойных слов. Старший бит числа — знаковый. Отрицательные числа представлены в дополнительном коде.

Данные со знаком с плавающей запятой обрабатываются специальным сопроцессором обработки чисел с плавающей запятой (ППЗ). В ППЗ определены два формата:

  • · одинарной точности — двойное слово: знак мантиссы (1бит), сдвинутый порядок (1 байт), мантисса (3 байта),
  • · двойной точности — учетверенное слово: знак мантиссы (1бит), сдвинутый порядок (1 байт), мантисса (7 байт).

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

Структура команд

Существенной новацией структуры команд ЭВМ PDP-11 является всесторонне развитая система адресации и использование стека при обращении к подпрограммам и при обслуживании прерываний. Эти механизмы стали нормой для многих последующих ЭВМ различных корпораций.

По количеству адресов операндов ЭВМ PDP-11 использует безадресные, одноадресные и двухадресные команды. Основной (полный) формат имеют двухадресные команды (рис. 4.3). Они содержат поля:

  • · кода операции,
  • · адреса операнда источника,
  • · адреса операнда приемника.

Код операции. Код операции задает операцию, структуру команды и размер операнда.

Двухадресные команды — это, в основном, команды работы с битами. Исключения составляют команды пересылки и две команды арифметических операций (сложения и вычитания слов в форме фиксированной запятой).

Из возможных 16 кодов для кодирования операции используются только четыре. Остальные коды используются для обозначения других дополнительных команд. Эти дополнительные форматы команд представлены на рис. 4.4.

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

Адресация операндов

В двухадресных командах первый адрес после кода операции является адресом источника, второй адрес является адресом приемника, т. е. адресом, по которому выбирается второй операнд, и в который записывается результат операции.

Для задания полного адреса в команде предусмотрены два смежных трехбитных поля. Первое поле — это поле режима адресации, второе поле — поле РОНа, используемого для задания компоненты адреса.

Для обозначения содержимого полей в архитектуре PDP-11 используется восьмеричная система счисления.

Адресные поля команд всех структур могут быть расширены одним или двумя дополнительными словами в зависимости от используемых режимов адресации.

Команды структуры «a» и «b» — это тоже двухадресные команды, но в качестве одного из операндов используется содержимое РОНа. В команде структуры «b» второй адрес задается смещением относительно счетчика команд. Это структура команды выхода из цикла. Содержимое указанного в команде РОНа автоматически уменьшается на размер выполненной команды. Пока содержимое РОНа не равно нулю, происходит передача управления на команду по адресу, равному содержимому счетчика команд плюс удвоенное смещение (в словах), которое рассматривается как число со знаком.

Команды со структурой «с» — это одноадресные команды, операнд адресуется и в памяти и в РОНах.

Команды со структурой «d» — это одноадресные команды. Адрес задается РОНом. Это могут быть команды обработки данных из стека, в этих случаях указанный в команде РОН является указателем стека.

Команды структуры «е» — это безадресные операции.

Команды структуры «f» — это команды условной передачи управления, условие передачи управления задается кодом операции, а адрес перехода задается удвоенным смещением относительно счетчика команд. Смещение рассматривается как число со знаком.

Набор команд

Кроме команд сложения и вычитания, все коды в этом формате по отношению к размерам операндов симметричны. На каждую операцию предусмотрено два кода операции: один для обработки полных операндов (слов), другой — для обработки байт. На языке ассемблера коды обработки байт содержат суффикс B. Пример:

  • · MOV А1 А2 ;переслать слово,
  • · MOVВ А1 А2 ;переслать байт,

где: А1 и А2 — адреса памяти или РОН, заданные в команде.

Режимы адресации

Режимы адресации задаются трехразрядным полем режима адресации. Если команда содержит два адреса, то режимы адресации для каждого операнда задаются независимо друг от друга, каждый своим полем режима.

Трехразрядное поле режима адресации позволяет задать 8 основных режимов адресации. Режим адресации — это правило вычисления адреса операнда по заданному РОНу и, возможно, одному из дополнительных слов команды. Использование дополнительных слов команды также определяется режимом адресации. Но не все РОНы в МП ЭВМ PDP-11 равнозначны. Регистр R7- это счетчик команд. Использование этого регистра для задания режима адресации или бессмысленно или, для четырех режимов, дает эффекты новых режимов.

Таким образом, программист, меняя режимы и используя как обычные РОНы, так и счетчик команд, может задавать операнды в командах двенадцатью режимами адресации. Основные режимы адресаций представлены в табл.5.

Таблица 5 Основные режимы адресаций.

№.

Мнем.

Название.

Описание.

R.

Регистровая.

В регистре-операнд.

®.

Регистровая косвенная.

В регистре — адрес операнда.

®+.

Автоувеличение.

В регистре — адрес операнда. После использования, адрес увеличивается на длину операнда.

@®+.

Автоувеличение косвенная.

В регистре — адрес адреса операнда. После использования, адрес увеличивается на 2.

— ®.

Автоуменьшение.

Содержимое регистра уменьшается на длину операнда, результат используется как адрес операнда.

@ - ®.

Автоуменьшение косвенная.

Содержимое регистра уменьшается на 2, результат используется как адрес адреса операнда.

X®.

Индексная.

Сумма содержимого регистра и индекса используется как адрес операнда, в качестве индекса используется второе или третье слово команды.

@X®.

Индексная косвенная.

Сумма содержимого регистра и индекса используется как адрес адреса операнда, в качестве индекса используется второе или третье слово команды.

Вопросы и/или темы для самопроверки:

  • 1. Максимальный размер математической памяти в PDP-11.
  • 2. Максимальный размер физической памяти в PDP-11.
  • 3. Особенности использования РОН.
  • 4. Биты кодов условия регистра состояния процессора.
  • 5. Количество разрядов кодирования полного адреса данных в команде PDP-11.
  • 6. Основные поля в команде PDP-11, задающие адреса операндов.
  • 7. Основные режимы адресации в PDP-11.
  • 8. Режимы адресации с использованием счетчика команд в PDP-11
Показать весь текст
Заполнить форму текущей работой