Шинный интерфейс процессора

ШИ предназначен для связи и согласования микропроцессора с системной шиной компьютера, а также для приёма, предварительного анализа команд выполняемой программы и формирования полных адресов операндов и команд.

Сегментные (адресные) регистры совместно с узлом формирования адреса реализуют сегментацию памяти. Команды и данные хранятся в ячейках, и их местоположение в памяти определяется адресами соответствующих ячеек. Поскольку команды и данные на уровне кодов неотличимы друг от друга, то для различия команд и данных используется их размещение в различных областях памяти – сегментах. Сегмент- это прямоугольная область памяти, характеризующаяся начальным адресом и длиной. Начальный адрес (адрес начала сегмента) – это номер (адрес) ячейки памяти, с которой начинается сегмент. Длина сегмента –это количество входящих в него ячеек памяти. Сегменты могут иметь различную длину. Все ячейки, расположенные внутри сегмента, перенумеровываются, начиная с нуля. Адресация ячеек внутри сегмента ведется относительно начала сегмента; адрес ячейки в сегменте называется смещениемили эффективным адресом - EA(относительно начального адреса сегмента). Текущий сегмент можно указать с помощью загрузки соответствующего сегментного регистра:

1) CS (Code Segment) – определяет начало текущего сегмента кода, в котором располагаются команды программы. Выборка команды производится с использованием в качестве эффективного адреса содержимого регистра IP (Instruction Pointer), а в качестве адреса сегмента – содержимого CS. Именно регистр IP хранит смещение адреса текущей команды программы.

2) DS (Data Segment) – определяет начало текущего сегмента данных. Ссылки на данные (за некоторым исключением) осуществляются относительно содержимого этого регистра.

3) SS (Stack Segment) – определяет начало текущего сегмента стека. Как правило, все адреса данных, связанных со стеком, задаются относительно содержимого этого регистра.

4) ES (Extended Segment) – определяет начало дополнительного текущего сегмента, который обычно рассматривается как вспомогательный сегмент данных (при межсегментных пересылках).

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

При адресации устройств ввода-вывода (УВВ) сегментные регистры не используются. Взаимодействие с ними процессор осуществляет через специальное адресное пространство – порты. Каждый порт имеет номер, что соответствует адресу подключённого к нему устройства. Порту устройства соответствует аппаратура сопряжения и два регистра – для обмена данными и управляющей информацией. Схема управления шиной и портами выполняет следующие функции:

1) формирование адреса порта и управляющей информации для него;

2) приём управляющей информации от порта, информации о готовности порта и его состоянии;

3) организация сквозного канала в системном интерфейсе для передачи данных между портом УВВ и процессором.

Схема управления шиной и портами использует для связи с портами системную шину: шину адреса, шину данных и шину инструкций.