Cтраница 4
Для уменьшения длины кода команды часто применяется так называемая укороченная адресация. Суть ее сводится к тому, что в команде задаются только младшие разряды адресов, старшие разряды при этом подразумеваются нулевыми. Такая адресация позволяет использовать только небольшую группу фиксированных ячеек с начальными ( короткими) адресами и поэтому может применяться лишь совместно с другими способами адресации. [46]
Для каждого из физических гнезд резервируется один сегмент страницы ввода-вывода. Дешифратор адресов, располагаемый на основной плате, вырабатывает сигнал выборки модуля, младшие разряды адреса дешифрируются в модуле для идентификации одного из байтов сегмента, к которому производится обращение. [47]
Кроме того, для каждого условия в поле условных переходов имеется разряд, указывающий участие данного условия в определении адреса. Получается разветвление на два направления: в зависимости от значения условия образуются два различающиеся в младшем разряде адреса и очередная МК считывается из одной либо другой ячейки УП. [48]
Четыре старших разряда декодируются, и если выясняется, что все они имеют единичное значение, то выполняется операция с плавающей запятой, в ходе которой при каждой 32-битовой пересылке данных в МС68881 в пятнадцати младших разрядах адреса передается управляющая информация. С использованием быстрейших видов адресации MC68020 и коротких абсолютных адресов управляющая информация, содержащаяся в пятнадцати младших разрядах адреса, дополняется знаком для автоматической генерации единиц в четырех старших разрядах адреса. [49]
Временные диаграммы циклов регенерации на ISA ( все интервалы указаны в наносекундах. [50] |
Такие циклы выполняет контроллер регенерации, который должен для этого получить управление магистралью каждые 15 микросекунд. Во время цикла регенерации производится чтение одной из 256 ячеек памяти ( для адресации при этом используются только восемь младших разрядов адреса SAO... Читаемая информация нигде не применяется, то есть это цикл псевдочтения. Проведение 256 циклов регенерации, то есть псевдочтение из 256 последовательных адресов памяти, обеспечивает полное обновление информации в памяти и ее непрерывное сохранение. Если по каким-то причинам цикл регенерации памяти не производится вовремя, возможна потеря информации. [51]
В этом случае таблица входов в прерывающие программы может быть начата не с любой ячейки памяти, а только с той, у которой а младших разрядов адреса имеет нулевое значение. Однако такое ограничение лишь незначительно уменьшает гибкость системы. Аппаратное распознавание причин прерывания требует специального оборудования, объем которого при большом количестве источников прерывания может быть значительным. Удовлетворительный компромисс достигается путем сочетания обоих методов распознавания: программного и аппаратного. Каждый уровень предназначается для обслуживания не одного, а нескольких источников прерывания, и физически уровень реализуется в виде некоторого количества прерывающих входов, объединенных схемой ИЛИ. Примером подобного компромисса может служить система прерывания управляющей машины IBM 1800, имеющей до 24 уровней прерывания, к каждому из которых может быть присоединено до 16 прерывающих входов. Состояние прерывающих входов в момент прерывания записывается в память в определенную для данного уровня ячейку. Для облегче-ния анализа причин прерывания в системе команд машины предусмотрена команда сдвига содержимого ячейки влево до появления первой единицы с подсчетом числа сдвигов в индексном регистре. Используя индексный регистр для модификации адресной части команды безусловного перехода, легко организовать разветвление прерывающей программы в соответствии с источниками прерывания. [52]
В этом случае таблица входов в прерывающие программы может быть начата не с любой ячейки памяти, а только с той, у которой а младших разрядов адреса имеет нулевое значение. Однако такое ограничение лишь незначительно уменьшает гибкость системы. Аппаратное распознавание причин прерывания требует специального оборудования, объем которого при большом количестве источников прерывания может быть значительным. Удовлетворительный компромисс достигается путем сочетания обоих методов распознавания: программного и аппаратного. Каждый уровень предназначается для обслуживания не одного, а нескольких источников прерывания, и физически уровень реализуется в виде некоторого количества прерывающих входов, объединенных схемой ИЛИ. Примером подобного компромисса может служить система прерывания управляющей машины IBM 1800, имеющей до 24 уровней прерывания, к каждому из которых может быть присоединено до 16 прерывающих входов. Состояние прерывающих входов в момент прерывания записывается в память в определенную для данного уровня ячейку. Для облегчения анализа причин прерывания в системе команд машины предусмотрена команда сдвига содержимого ячейки влево до появления первой единицы с подсчетом числа сдвигов в индексном регистре. Используя индексный регистр для модификации адресной части команды безусловного перехода, легко организовать разветвление прерывающей программы в соответствии с источниками прерывания. [53]
Может использоваться, например, следующая система адресации УВВ. Адрес УВВ определяется 11-разрядным двоичным словома1а2а361Ь2 з 1Сасз 4 - Кода ад представляет адрес канала, причем адрес 000 присвоен мультиплексному каналу и адреса 001 - ПО - шести селекторным каналам. Восемь младших разрядов адреса определяют адрес УВВ в канале. [54]
В качестве адресов связи указываются адреса первых ячеек ассоциативных узлов. Если места списковых слов внутри узла не закреплены постоянно за определ. В примере для этой цели служит младший разряд адреса связи ( после запятой), указывающий номер спискового слова ( адреса связи) в узле, соответствующего данному списку. Обычно адреса связи, относящиеся к одному списку, располагаются в ассоциативных узлах на одинаковых местах, и в этих случаях указывать дополнительно номера списковых слов не требуется. [55]
В качестве адресов связи указываются адреса первых ячеек ассоциативных узлов. Если места списковых слов внутри узла не закреплены постоянно за определ, списками, то необходимо в адресе связи указывать положение спискового слова в узле. В примере для этой цели служит младший разряд адреса связи ( после запятой), указывающий номер спискового слова ( адреса связи) в узле, соответствующего данному списку. Обычно адреса связи, относящиеся к одному списку, располагаются в ассоциативных узлах на одинаковых местах, и в этих случаях указывать дополнительно номера списковых слов не требуется. [56]
О циклах обмена в режиме ПДП уже говорилось в разделе 2.2.3. Получив сигнал запроса ПДП по одной из линий DRQ, контроллер формирует запрос процессору на захват шины и, получив разрешение от процессора, сообщает о предоставлении ПДП запросившему прямой доступ устройству по соответствующей линии DACK. После этого производится цикл ПДП, пересылающий данные из устройства ввода / вывода в память или наоборот. При этом сам контроллер ПДП формирует только 16 младших разрядов адреса памяти, а восемь старших разрядов содержатся в регистре страниц. Свой собственный регистр страниц соответствует каждому из каналов ПДП. [57]
Память КЭШ представляет собой буфер для согласования скоростей функционирования относительно медленной оперативной памяти, и быстродействующего арифметико-логического блока. Каждый элемент в памяти КЭШ организован в виде пары слов: слово с четным адресом - слово с нечетным адресом. Доступ к ней при всякой ссылке на память осуществляется младшими разрядами четного адреса. Если искомое слово находится в памяти КЭШ, то обращаться в оперативную память не требуется. В результате этого значительно ускоряется выполнение операций со ссылкой на память. [58]
При такой адресации в команде содержится полный 16-разрядный абсолютный адрес операнда. Поэтому длина команды должна равняться 3 байтам. Разновидностью прямой адресации является страничный способ адресации, при котором в команде задаются только 8 младших разрядов адреса, а старшие 8 разрядов адреса ( старший байт) остаются такими же, как в предыдущей команде. В случае нуль-страничного способа адресации старший байт адреса принимается равным нулю, а 8 младших разрядов адреса в команде указывают на адрес в нулевой странице. Оба этих способа адресации требуют всего лишь двухбайтовых команд. [59]
На рис. 5.33, б показана схема МП с передачей адреса и данных по одной шине. Такая работа МП предусматривает режим разделения во времени. При передаче в режиме разделения во времени сначала передается восемь старших разрядов адреса, на следующем такте восемь младших разрядов адреса, на третьем такте - сами данные в виде восьмиразрядной кодовой комбинации. [60]