История системных интерфейсов


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

Канал ввода-вывода обеспечивал сопряжение системного интерфейса образованного процессором с интерфейсами устройств ввода-выводу и ВЗУ.

Часть адресного пространства используется под ОЗУ часть под ПЗУ часть под ячейки КВВ посредством которого осуществлялся обмен с ПУ. Со временем эту систему ввели другие активные устройства: канал прямого доступа к памяти(КПД), предназначенный для пересылки данных из ПУ(КВВ) в оперативную память(основную память).

Рис 3(полный)

В этом случае на шину адреса ставим двухнаправленную стрелку так как мы должны выставлять адрес как регистров канала ввода-вывода так и адрес ЗУ куда эти данные записываются или откуда эти данные читаются. В таком случае возникает проблема доступа центрального процессора к тому интерфейсу что он порождает и проблема связанная с доступом КПД к тому же самому интерфейсу. Здесь интерфейс это некое физическое устройство куда вставляется платы ОЗУ, ПЗУ КВВ КПД. И вот получается что это устройство одно на всех. И получается когда процессор занимает шину адреса или магистраль данных то понятно что КПД не может быть активным на этом системном интерфейсе: как же КПД будет пересылать данные если магистраль данных занята пересылкой других данных. Поэтому были вынуждены обеспечить специальную связь КПД с ЦП где внутри процессора реализовался арбитр системного интерфейса который разрешал конфликт связанный с доступом к этому системному интерфейсу. Со временем добавили процессор с плавающей точкой (FPU) который также требовал работы по схемам арбитража. В этом случае удалось решить проблему связанную с тем что FPU было как бы полуактивным устройством :сам процессор FPU не выставляет адрес не обращается к памяти за него это делает ЦП потому что они синхронизированы на уровне команд то есть команда умножить число А находящееся по такому-то адресу с числом В находящемуся по какому-то адресу в этом случае ЦП считывает данные обеспечивает их выставление на системный интерфейс сам ЦПУ эти данные не считает но дает команду FPU что данные уже выставлены. То есть устройство доступа к памяти есть только в ЦП в FPU есть архитектуры где это не сделано.

Платформа с множественным интерфейсом.

Загрузка...