Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
рыбак.docx
Скачиваний:
35
Добавлен:
21.09.2019
Размер:
2.35 Mб
Скачать
  1. Пример базовой архитектуры - pdp-11

Программисты полюбили PDP-11 за её «ортогональную» систему команд: можно было отдельно запоминать команды, и отдельно — методы доступа к операндам. Можно было считать, что любой метод доступа (режим адресации) будет работать с любой операцией; не нужно было запоминать список исключений и особых случаев, в которых операция имеет ограниченный набор режимов адресации, все регистры (R0…R7) могли использоваться с любой командой.

В некотором смысле, набор режимов адресации образовывал «базис», а набор операций — другой базис. Каждая двухоперандная инструкция состояла из двух 6-битных идентификаторов операндов (каждый из них содержал три бита на номер регистра и три бита на режим адресации), а также из 4-битного кода операции; однооперандная инструкция содержала один 6-битный идентификатор операнда и 10-битный код операции.

Отсутствие отдельной шины ввода/вывода

В отличие от многих других компьютеров своего времени, первые модели PDP-11 не имели отдельной шины ввода/вывода — только шину памяти Unibus. Все регистры устройств ввода/вывода имели свои адреса, аналогичные адресам памяти, поэтому отдельные инструкции ввода/вывода были не нужны. Система прерываний была сделана максимально простой, но достаточно гибкой. Каждое устройство имело свой вектор прерывания, которое при необходимости сообщало процессору, поэтому не было жёсткого ограничения на количество векторов, доступных для использования устройствами.

Высокопроизводительные машины семейства, начиная с PDP-11/45, уже имели отдельную шину памяти, Unibus же продолжала использоваться только для ввода/вывода. В PDP-11/70 был сделан ещё один шаг вперёд: добавился отдельный интерфейс для магнитных дисков и лент — Massbus. Тем не менее, управляющие регистры устройств ввода/вывода по-прежнему проецировались на память, и отдельных инструкций ввода/вывода не требовалось.

Разработана для массового производства

И наконец, компьютеры PDP-11 были разработаны для производства на заводах с низкоквалифицированной рабочей силой. Размеры всех конструктивных частей были относительно некритичными. При сборке печатные платы подключались к общей плате, на которой применялся монтаж навивкой. Соединительные блоки были очень похожи на те, которые уже давно применялись в телефонии.

    1. Структура процессора. Регистры и их назначение.

Центральный процессор — это мозг компьютера. Его задача — выполнять программы, находящиеся в основной памяти. Он вызывает команды из памяти, определяет их тип, а затем выполняет их одну за другой.

Процессор состоит из нескольких частей:

  1. Блок управления отвечает за вызов команд из памяти и определение их типа.

  2. Арифметико-логическое устройство выполняет арифметические операции (например, сложение) и логические операции (например, логическое И).

Важнейшими характеристиками являются:

- разрядность (количество разрядов чисел, над которыми он может совершать операции PDP-11 – 16-ти разрядный)

- система команд (набор команд, которые процессор может выполнить)

- быстродействие (количество команд в секунду)

- тактовая частота

Устройство управления вырабатывает последовательность управляющих сигналов, инициирующих выполнение микроопераций, обеспечивающих реализацию текущей команды, координирующих работу всех элементов ЦП, управляющих процессом обмена информацией с другими блоками ЭВМ.

Арифметико-логическое устройство предназначено для выполнения арифметических и логических операций над двоичными числами или кодами.

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

Таким образом, регистр для хранения n-разрядного двоичного числа должен содержать n триггеров. Регистры могут использоваться для выполнения и некоторых других функций: сдвиг хранимого в регистре числа на определенное число разрядов влево или вправо, преобразование числа из последовательной формы (при которой оно передается последовательно разряд за разрядом) в параллельную (с передачей всех разрядов одновременно) либо, наоборот, преобразование из параллельной формы представления числа в последовательную и др. В зависимости от формы представления числа (параллельной или последовательной), используемой при его вводе в регистр, различают два типа регистров: параллельные и последовательные. В параллельный регистр предназначенное для хранения число подается одновременно всеми разрядами, т. е. в параллельной форме. В последовательный регистр ввод числа производится путем последовательной во времени подачи цифр отдельных разрядов (обычно начиная с цифры младшего разряда), т. е. в последовательной форме.

Регистры ЦП в какой-то мере подобны ячейкам оперативной памяти. Некоторые из них также способны запоминать и хранить двоичные коды. Однако размещаясь в самом центральном процессоре его регистры выполняют свои важные специфические функции.

Необходимость наличия в составе процессора группы дополнительных регистров диктуется следующими факторами:

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

- процессор должен формировать адреса команд выполняемой команды

- для формирования адресов ячеек памяти при выборке операндов требуется использовать различные методы

- необходимо иметь средство контроля результата операций, выполняемых АЛУ

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

Для этих целей используются следующие регистры:

  1. Регистр команд (предназначен для временного хранения, считанного из ячейки памяти кода текущей команды, выполняемой ЭВМ, эта команда интерпретируется в устройстве управления)

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

  3. Регистры общего назначения (используются как временная быстродействующая память для входных и выходных данных, операндов АЛУ, а так же для реализации методов адресации операндов)

  4. Сегментные регистры и регистры адреса страниц (используются для решения проблем, связанных с расширением адресуемого пространства и управлением памятью ЭВМ)

  5. Регистр-указатель стека (предназначен для организации в памяти ЭВМ аппаратно-управляемого стека)

  6. Регистр состояния процессора (предназначен для отражения текущего состояния процессора и для установки его режима)

Флаги состояния (разряды признаки):

- перенос из старшего разряда (С)

- арифметическое переполнение (V)

- нулевой результат (Z)

- отрицательный результат (N)

- выход переноса бита 3 (Auxiliary carry — служебный перенос) (А)

- результат четный (Parity) (Р)

Внутри центрального процессора находится память для хранения промежуточных результатов и некоторых команд управления. Эта память состоит из нескольких регистров, каждый из которых выполняет определенную функцию. Обычно все регистры одинакового размера. Самый важный регистр — счетчик команд, который указывает, какую команду нужно выполнять дальше. Еще есть регистр команд, в котором находится команда, выполняемая в данный момент. У большинства компьютеров имеются и другие регистры, одни из них многофункциональны, другие выполняют только какие-либо специфические функции.