Cтраница 4
Модули, подключенные к шине, могут быть задатчика-ми ( главными) или исполнителями ( подчиненными), причем первые могут брать на себя управление шиной и инициировать операции по передаче данных, запрашивая при необходимости один цикл шины у контроллера ( арбитра) шины. [46]
![]() |
Пример конвейерного выполнения команд. [47] |
Пример, иллюстрирующий реализацию описанного конвейерного принципа, дан на рис. 1.4, где TI обозначает холостые такты работы шины, когда очередь команд заполнена, а операционное устройство занято выполнением текущей команды и не запрашивает выполнения цикла шины. [48]
Сигналы SR, С и RDY ( сброс, синхронизация и готовность соответственно) синхронизируются в генераторе фаз КР1810ГФ84 и поступают на одноименные входы ЦП КМ1810ВМ86 или КМ1810ВМ88, МП КМ1810ВМ87 и МП ввода-вывода КМ1810ВМ89 для установки их в исходное состояние, синхронизации с контроллером системной шины КР1810ВГ88, а также для подтверждения адресуемым устройством окончания ( неокончания) обмена с памятью в текущем цикле местной шины соответственно. [49]
Вызов из памяти происходит от точки к точке по координатному коммутатору по 16 байтов. Цикл шины составляет 12 не ( 83 3 МГц), и каждая адресная шина может отслеживаться в каждом цикле любой другой шины, то есть всего возможно 167 млн отслеживаний / с. [50]
Цикл шины выполняется, когда требуется заполнить очередь команд или осуществить обмен данными в процессе выполнения команды. Если цикл шины не требуется, то формируются холостые такты TI, во время которых устройство шинного интерфейса остается пассивным. В течение такта TI на линиях S6 - - S3 микропроцессор сохраняет сигналы состояния от предыдущего цикла шины. Если в предыдущем цикле производилась запись, МП сохраняет на линиях AD записываемые данные до следующего цикла шины; если производилось чтение, МП не управляет линиями до начала следующего цикла шины. Число холостых тактов зависит от длительности выполняемой команды и может быть достаточно большим. [51]
ВВ после этого сбрасывает сигнал подтверждения. На этом цикл шины считывания ВВ завершен. В циклах считывания из памяти, записи в память и записи ВВ логика управления шиной генерирует соответствующий сигнал квитирования, а затем цикл шины выполняется аналогичным образом. [52]
Физический адрес ячейки памяти представляет 20-битовое число в диапазоне 0 - FFFFF, которое однозначно определяет положение каждого байта в пространстве памяти емкостью 1 Мбайт. В начале каждого цикла шины, связанного с обращением к памяти, физический адрес выдается на шину адреса и сопровождается сигналом ALE. Так как МП ВМ86 является 16-битовым, то все операции при вычислении физического адреса производятся с 16-битовыми адресными объектами. [53]
Процесс отбирания контроллером ПДП циклов шины у центрального процессора называется захватом цикла. Но выигрыш в том, что не нужно обрабатывать одно прерывание при каждом передаваемом байте ( слове), сильно перевешивает потери, происходящие из-за захвата циклов. [54]
![]() |
Источники прерываний. [55] |
Микропроцессор может передавать по шине байт или слово в / из ВУ. Чтобы слово передавалось за один цикл шины, адрес ВУ должен быть четным. Адрес байтового ВУ может быть четным или нечетным, и соответственно порты этих внешних устройств подключаются к линиям младшего и старшего байта шины данных. [56]
![]() |
Передача блока данных. [57] |
До этого момента мы обсуждали только обычные циклы шины, когда задающее устройство ( обычно центральный процессор) считывает информацию из подчиненного устройства ( обычно из памяти) или записывает в него информацию. Однако существует еще несколько типов циклов шины. Давайте рассмотрим некоторые из них. [58]
Шина iLBX II, имеющая пропускную способность 48Мбайт / с может, кроме того, служить для связи двух процессорных плат с основной памятью без применения основной системной шины, которая в этом случае превращается в шину ввода-вывода и управления. За счет перекрытия во времени циклов шины локальной памяти и системной шины можно достичь более высокой скорости обращений к памяти со стороны МП, содержащих, конвейеры, которые позволяют вырабатывать адрес для очередного обращения к памяти одновременно с выборкой предыдущего слова данных. [59]
Длина очереди команд МП ВМ88 выбрана равной 4 байт, поскольку в отличие от ВМ86 ВМ88 может считывать только байты ( а не слова) за один цикл шины и соответствующее увеличение времени выборки команд не позволяет полностью использовать 6-байтовую очередь для повышения производительности. Передача в ВМ88 одного байта за цикл шины приводит к увеличению времени выполнения команд на четыре такта при передаче каждого слова. Поэтому при оценке времени выполнения команд необходимо учитывать число обращений к памяти и к портам ввода - вывода для передачи слов. [60]