Структура ЭВМ с общей шиной.
Часто при построении ЭВМ для связи процессорного модуля с периферийными используется одна группа шин. В этом случае микропроцессор обращается к внешним устройствам ввода-вывода как к элементу памяти. Данная организация проста с точки зрения задействованных аппаратных средств, но допускает лишь последовательный во времени режим обмена информацией между периферийными модулями и процессорным модулем, т.е. невозможно одновременно обратиться и к памяти и к портам ввода-вывода. Структурная схема ЭВМ с общей шиной представлена на рис.4.2.
Рис.4.2. Структура ЭВМ (МП-системы) с общей шиной.
По роду передаваемой информации все шины разделены на три группы, образующие шину данных, шину адреса и шину управления. Характерной особенностью шины данных является ее двунаправленность, обеспечиваемая буферными регистрами, под которой понимается возможность передачи данных в разные моменты времени в различных направлениях, например, сначала от процессорного модуля к периферийному, а затем в обратном направлении. Ещё одна особенность этих буферных регистров заключается в том, что они являются трехстабильными, т.е. выходы этих регистров могут принимать третье пассивное или, так называемое высокоимпедансное состояние, благодаря чему регистр оказывается как бы отключенным от шины данных.
Каждый периферийный модуль ЭВМ имеет вход для приема сигнала ВМ (выбор модуля). В процессе работы ЭВМ с помощью этого сигнала "активизируется" только один из периферийных модулей. Это означает, что возможен обмен данными между ним и процессорным модулем. Выходы остальных модулей при этом остаются в высокоимпедансном состоянии (отключенном) и на работу ЭВМ не влияют.
Поскольку процессорный модуль должен обмениваться данными с определенными ячейками памяти запоминающих устройств или с определенными портами, то для возможности обращаться (адресоваться) к ним, каждая ячейка памяти и каждый порт ввода и вывода имеют свои индивидуальные номера - адреса. При обмене данными процессорный модуль устанавливает двоичный код, соответствующий адресу порта или ячейки памяти на шине адреса ЭВМ. Шина адреса является однонаправленной, т.е. адреса передаются только в одном направлении: от процессорного модуля.
Рассматриваемая ЭВМ содержит два модуля памяти: модуль ОЗУ и модуль ПЗУ. Некоторые ЭВМ могут содержать несколько модулей ОЗУ и ПЗУ, каждый из которых имеет вход для приема сигнала «выбор модуля» или в английской терминологии «change crystal» CS. Во всех случаях, когда ЭВМ содержит более одного модуля памяти, часть кода адреса ячейки памяти должна указывать, к какому модулю памяти производиться обращение. Эта часть называется кодом выбора модуля. Оставшаяся часть кода адреса выбирает ячейку памяти внутри модуля и называется адресом слова. Дешифрация кода выбора модуля производится с помощью дешифратора выбора модуля памяти, который вырабатывает соответствующий сигнал CS. Дешифрация адреса слова осуществляется внутренним дешифратором модуля. Входы этого дешифратора (адресные шины модуля памяти) подключаются к соответствующим линиям шины адреса.
Рассматриваемая ЭВМ содержит один порт ввода и один порт вывода. Однако таких портов у ЭВМ может быть и гораздо больше. Все входы CS портов ввода и вывода подключаются через дешифратор номеров портов к линиям шины адреса ЭВМ. Порты «активизируются» при появлении на шине адреса кодов, соответствующих их номерам. Дополнительным условием «активизации» любого периферийного модуля является наличие соответствующего сигнала на шине управления. По линиям шины управления от процессорного модуля к периферийным поступают сигналы, определяющие выбор группы модулей (порты или модули памяти), а также направление обмена данными: сигнал чтения из модулей запоминающих устройств – RDM (read memory), сигнал записи в модули запоминающих устройств – WRM (write memory), сигнал чтения из порта ввода – RDIO (read input/output), сигнал записи в порт вывода – WRIO (write input/output).
Таким образом, при записи, например, числа в ячейку памяти ОЗУ процессорный модуль устанавливает на шине адреса адрес этой ячейки памяти, на шине данных – двоичный код записываемого числа и выдает на соответствующую линию шины управления сигнал WRM. При этом с шины данных число записывается в адресуемую ячейку памяти ОЗУ. При чтении, например, данных из какого-либо порта ввода процессорный модуль устанавливает на шине адреса адрес этого порта и выдает на соответствующую линию шины управления сигнал RDIO. При этом адресуемый порт ввода передает информацию со своего входа на шину данных, откуда она считывается процессорным модулем.
Мы рассмотрели организацию обмена данными между процессорным и периферийными модулями. Теперь рассмотрим работу ЭВМ в целом. Работа ЭВМ, как и любого цифрового устройства, заключается в обработке исходных данных по заданному алгоритму. Под алгоритмом работы цифрового устройства понимается набор последовательно выполняемых действий по обработке исходных данных с целью получения требуемого результата. В ЭВМ алгоритм реализуется при выполнении программы, хранимой в памяти в виде последовательности команд.
Выполнение любой команды начинается с чтения кода этой команды из запоминающего устройства. Для этого процессорный модуль устанавливает на шине адреса код адреса ячейки памяти, в который записан код команды и выдает на соответствующую линию шины управления сигнал RDM. В результате код команды выдается из ячейки памяти на шину данных и считывается процессорным модулем. МП дешифрирует код операции команды, определяет какие действия ему необходимо выполнить и переходит к исполнению команды. Во время выполнения команды МП может обращаться к памяти для чтения или записи данных, к порту ввода для ввода исходных данных, к порту вывода для вывода полученных результатов.
После окончания выполнения текущей команды МП переходит к выполнению очередной команды, т.е. обращается к ячейке памяти, где хранится код следующей команды.