Представление данных сопроцессора

В сопроцессоре КМ1810ВМ87 используются три класса данных: целочисленные, упакованные двоично-десятичные и действительные. Основной класс данных - действительные. Над целочисленными данными выполняется ограниченное число операций; над упакованными двоично-десятичными данными - только две операции (загрузка и запоминание).
Целочисленные данные - положительные и отрицательные целые числа, нуль, неопределенность. Формат их состоит из двух полей . В случае целых чисел значение "О" в поле "Знак" соответствует положительному числу, значение "1" - отрицательному. Поле "Модуль" содержит дополнительный код модуля числа. Максимальное отрицательное целое число используется в качестве целочисленной неопределенности при маскированном ответе на особый случай "Недействительная операция".
Упакованные двоично-десятичные данные (УД) имеют длину 80 разрядов (10 байтов). В указанный класс данных входят положительные и отрицательные целые числа, нуль (со знаком), неопределенность. Формат их состоит из трех полей.
 
В случае целых чисел значение "О" в поле "Знак" соответствует положительному числу, значение "1" - отрицательному. Полю "Свободно" при запоминании присваивается значение "О", при загрузке это поле игнорируется. Поле "Модуль" содержит модуль числа, состоящий из 18 двоично-десятичных цифр.
Упакованная двоично-десятичная неопределенность - результат маскированного ответа на особый случай недействительной операции при выполнении команды "Запоминание УД и выгрузка содержимого текущего регистра из стека" (FBSTR). При загрузке неопределенности результат выполнения команды "Загрузка в стек УД (FBLD) не определен.
Действительные данные состоят из трех типов: КД, ДД, и ВД . В этот класс данных входят нормализованные числа, денормализованные числа, ненормализованные числа, нули, псевдонули, бесконечности, нечисловые величины (в частном случае неопределенности). Каждый из видов данных может иметь положительное и отрицательное значение. Ненормализованные числа и псевдонули существуют только в 10-байтном действительном формате. Значения тегов вещественных данных в регистре стека приведены ранее.

Примечания: 1. В скобках записан неявный разряд целой части мантиссы. 2. Поле "Знак" определяет знак данного: содержимое "О" - данное положительное, содержимое "1" - данное отрицательное. 3. Поле "Порядок" содержит смещенный порядок данного Е = Р - В .

Примечание. В квадратных скобках указан необязательный разряд целой части мантиссы данного. Для 10-байтных данных этот разряд указывается явно, для 4- и 8-бай- тных - его наличие предполагается.
Поле "Мантисса" содержит двоичный код значения данного, состоящий из целой и дробной частей. Значение целой части 4- и 8- байтных данных устанавливается неявно. Положение запятой дроби представляемого числа определяется порядком числа.
Установка МП КМ 1810ВМ87 в исходное состояние
В исходное состояние МП КМ1810ВМ87 устанавливается аппаратным и программным способами. Аппаратный способ установки МП осуществляется с помощью входного сигнала SR .
Работы (перезапуск МП) в исходное состояние КМ1810ВМ87 устанавливается путем подачи на вход SR положительного импульса длительностью не менее четырех периодов сигнала синхронизации С. При поступлении сигнала SR МП прекращает выполнение внутренних операций и с задержкой на один период сигналов синхронизации С переводит выводы в состояние:
Вывод    Состояние вывода
A/D15 ... A/D0    Высокоимпедансное
A19/SA6 ... A16/SA3    »
BHE/SA7, SA2 ... SA0    Переход через высокий уровень
    в высокоимпедансное
RQ/GT0    "1"
RQ/GT1    "1"
INT    "0"
BUSY    "0"

При аппаратной установке исходного состояния МП КМ1810ВМ87 автоматически определяет тип ЦП с помощью двунаправленного вывода BHE/SA7, который подсоединяется к одноименному выводу микросхемы КМ1810ВМ86 или к выводу SS0 микросхемы КМ1810ВМ88.
По истечении восьми периодов сигнала синхронизации С (8-Тс) после перехода сигнала SR в состояние низкого уровня  ЦП выбирает слово первой команды из ячейки памяти по адресу FFFFOH. Если микросхема КМ1810ВМ86 является ЦП, то на входе BHE/SA7 во время выдачи адреса FFFFOH устанавливается напряжение низкого уровня, так как первая выборка соответствует слову с четным адресом ВНЕ = 0 при А0 = 0. Если в первом цикле шины первую выборку осуществляет ЦП КМ1810ВМ88, то на входе BHE/SA7 устанавливается напряжение высокого уровня, так как выбирается байт команды, расположенной по четному адресу ВНЕ = 1 при А0 = 0.
Через 20-Тс после перехода сигнала SR в состояние низкого уровня МП КМ1810ВМ87 готов к выполнению команд. В исходное состояние МП КМ1810ВМ87 устанавливается программным способом с помощью команд FINIT/FNINIT и FSAVE, но в отличие от аппаратного способа без опознания типа ЦП.
Параметры и режимы эксплуатации
Статические  и динамические  параметры МП КМ1810ВМ87 приведены при Ucc=+5 В ±5% и температуре окружающей среды от - 10 до 70°. В активном режиме все сигналы, которые управляют местной шиной, вырабатывает МП КМ1810ВМ87, а в пассивном режиме-ЦП КМ1810ВМ86 или КМ1810ВМ88.
Процесс организации доступа МП КМ1810ВМ87 к использованию местной шиной, ковда ею управляет ЦП КМ1810ВМ86 или КМ1810ВМ88, изображен на рис. 16, а когда ею управляет МП КМ1810ВМ87,  показана синхронизация включения сигналов INT и BUSY относительно сигнала С.

Включение МП КМ1810ВМ87 в вычислительную систему

Входные сигналы QS1 и QS0 МП КМ1810ВМ87, поступающие с одноименных выходов ЦП КМ1810ВМ86 или КМ1810ВМ88, позволяют выбирать и декодировать команды синхронно с ЦП. Из общего потока команд сопроцессор выбирает только команду расширения ESC ЦП. Адресная часть команды ESC обрабатывается ЦП, сформированный 20-разрядный физический адрес передается сопроцессору для доступа к данным в памяти. Так как команды из памяти выбираются только ЦП, команде ESC должна предшествовать команда WAIT для предотвращения выборки команд ESC до окончания обработки сопроцессором предыдущей команды. Если необходимость в команде WAIT отсутствует, то для сохранения метрических характеристик объектного кода вместо нее используется команда NOP.
ЦП вычисляет исполнительный адрес операнда в памяти, если в команде определена ссылка на него, затем выполняет фиктивный цикл чтения слова памяти по этому адресу. Прочитанные данные ЦП игнорируются. Сопроцессор запоминает вычисленный ЦП исполнительный адрес. При чтении операнда из памяти устройство управления выбирает первое слово операнда в момент фиктивного цикла чтения, затем самостоятельно считывает последующие слова (если необходимо).
При записи результата в память устройство управления не учитывает данные, полученные в момент фиктивного цикла чтения. Если сопроцессор сформировал результат выполнения операции, который должен быть записан в память, то устройство управления записывает его в память по предварительно сохраненному адресу. Число обращений к памяти зависит от числа слов в результате, а при фиктивном цикле чтения операнда - от типа ЦП, который определяется автоматически по сигналу системного сброса: для 16-разрядного - одно обращение; для 8-разрядного - два обращения.
Если сопроцессор обращается к операнду в памяти по нечетному адресу, то 16-разрядный ЦП оптимизирует обмен с памятью посредством обращения к одному (старшему) байту слова памяти и последующего обращения к двум байтам слова памяти. Все операнды команд сопроцессора в памяти занимают четное число байтов. Для увеличения производительности вычислительной системы на базе 16- разрядного ЦП рекомендуется размещать данные сопроцессора по четным адресам. Пример выполнения последовательности команд ЦП и сопроцессором.
 
Выходной сигнал BUSY МП КМ1810ВМ87 информирует ЦП о том, что в данный момент занят (не занят) выполнением программы. Сигнал BUSY поступает на вход TEST ЦП, который с помощью команды WAIT проверяет этот сигнал. Если на входе TEST присутствует напряжение низкого уровня (МП КМ1810ВМ87 не выполняет команд), то ЦП продолжает выборку команд из программы, в противном случае он переходит в состояние ожидания, так как МП КМ1810ВМ87 занят обработкой команды, результат которой необходим для использования в следующей команде.
МП КМ1810ВМ87 может осуществлять прерывания ЦП с помощью выходного сигнала INT при обнаружении им немаскированного особого случая. Вывод INT (см. рис.19) подключается к ЦП через программируемый контроллер прерываний КР1810ВН59А.
Для доступа к управлению местной шиной при приеме или пе- редаче данных в МП КМ1810ВМ87 двунаправленный вывод RQ/GT0 (запрос/разрешение) подключается к одному из выводов RQ/GT0 или RQ/GT1 ЦП. Второй вывод RQ/GT1 МП КМ1810ВМ87 используется в микропроцессорной системе для получения доступа к управлению местной шиной МП ввода-вывода КМ1810ВМ89. Этот вывод имеет более высокий приоритет по сравнению с выводом RQ/GT0.
Сигналы SR, С и RDY (сброс, синхронизация и готовность соответственно) синхронизируются в генераторе фаз КР1810ГФ84 и поступают на одноименные входы ЦП КМ1810ВМ86 или КМ1810ВМ88, МП КМ1810ВМ87 и МП ввода-вывода КМ1810ВМ89 для установки их в исходное состояние, синхронизации с контроллером системной шины КР1810ВГ88, а также для подтверждения адресуемым устройством окончания (неокончания) обмена с памятью в текущем цикле местной шины соответственно.    
Двунаправленный вывод BHE/SA7 (разрешение передачи данных по старшей половине местной шины/состояние) выполняет несколько функций: входной сигнал ВНЕ определяет тин ЦП в Т1 первого цикла местной шины после выполнения аппаратного сброса; в последующих циклах местной шины сигнал ВНЕ является выходным и разрешает передачу данных по старшей половине местной шины. Сигнал SA7 в тактах Т2, ТЗ, TWI и Т4 выдает (принимает) информацию состояния. Вывод SA7 является входом, когда местной шиной управляет ЦП, и выходом, когда местной шиной управляет МП КМ1810ВМ87. По уровню входного (выходного) напряжения сигнал SA7 соответствует сигналу ВНЕ того же цикла местной шины.
После предоставления ЦП местной шины в распоряжение МП КМ1810ВМ87 последний вырабатывает сигналы состояния SA2...SA0. Программно-управляемые двунаправленные выводы SA2...SA0 МП КМ1810ВМ87 подключаются к контроллеру КР1810ВГ88, вырабатывающему управляющие сигналы для организации доступа к памяти и устройствам ввода-вывода.
Выводы A/D/S двунаправленные трехстабильные ЦП КМ1810ВМ86 или КМ1810ВМ87 и МП ввода-вывода КМ1810ВМ89 образуют местную шину, к которой при необходимости каждый из них имеет доступ. Когда местной шиной управляет, например, ЦП, то выводы A/D/S двух других МП находятся в высокоимпедансном состоянии. Выдача (прием) информации адреса, данных или состояния по выводам A/D/S разнесена во времени, и при записи в шинные формирователи КР1810ВА86 (KP1810BA87) или регистры адреса КР1810ИР82 (КР1810ИР83) происходит ее стробирование соответствующими управляющими сигналами, которые вырабатывает контроллер системной шины КР1810ВГ88. Сигналы А19...А0 и ВНЕ записываются в регистры адреса и выдаются на шину адреса сигналом ALE, а обмен данными между местной шиной и системной шиной осуществляется с помощью сигналов DT/R и DEN контроллера КР1810ВГ88.
Шины данных, адреса, управления и прерывания образуют системную шину, а показанная  схема - микропроцессорный модуль, который представляет собой мощную вычислительную систему. Данные по системной шине передаются одинаково у МП КМ1810ВМ87 и ЦП; сигналы состояния, адреса и данных полностью идентичны.
 


Обсудить вопрос в студенческом форуме

 

Сайт содержит информацию о учебном заведении и студенческой общине и не является официальным