Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по СиФО часть 5.1.doc
Скачиваний:
52
Добавлен:
15.09.2014
Размер:
771.07 Кб
Скачать

5. Архитектура компьютерных устройств

5.1. Понятие архитектуры

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

1) типы обрабатываемых данных и способы их представления в машине;

2) способы адресации операндов;

3) организацию адресного пространства оперативной памяти;

4) форматы команд;

5) программистские модели процессоров или регистровые структуры;

6) особенности системы команд машины.

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

1) к передаче информации в пространстве (от регистра к регистру, от ЗУ к ЗУ, сдвиг и т.д.);

2) к передаче данных во времени (хранение в памяти);

3) к выполнению логических операций;

4) к выполнению арифметических операций.

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

  1. команды арифметических операций над числами с фиксированной и плавающей запятой;

  2. команды десятичной арифметики;

  3. команды логических операций (поразрядное И, ИЛИ, mоd2);

  4. команды пересылки данных;

  5. команды ввода-вывода;

  6. команды условных и безусловных переходов;

  7. команды управления режимами работы компьютера.

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

5.2. Выбор структуры и формата команды

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

Как правило, структура любой команды содержит операционную и адресную части. При этом число разрядов, отводимое под код операции, определяется величиной:

,

где -число команд,- разрядность поля кода операции.

Например, если , топринимается равным 8.

При проектировании компьютерных устройств формат команды стараются сделать как можно короче, однако требование краткости команды и соответствие машинному слову разработчик системы должен учитывать на всех этапах проектирования. Если данное требование не может быть выполнено по ряду причин (например, при нестандартной длине данных), то формат команды «подгоняют» под размерность 3/2 слова, а в более сложных случаях – под размерность 0,9 или 1,9 разрядности машинного слова. При этом следует помнить, что применение форматов команд, содержащих более двух слов, весьма неэффективно из-за большого времени выборки из оперативной памяти.

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

  1. код операции;

  2. адреса операндов А1иА2;

  3. адрес приемника результата А3;

  4. адрес следующей команды.

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

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

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

В данной команде поле А1содержит адресную информацию о первом операнде, полеА2указывает на второй операнд и чаще всего на расположение приемника результата.

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

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

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