Этот случай возникает при антипереполнении стека (попытка извлечения из пустого регистра) и переполнении стека (попытка включения в непустой регистр). Стековые операции распознаются по биту SF=1 в SW. При антипереполнении стека бит C1=0, С1=1 при переполнении. В операциях FSt и FMul St, St(i) формируется особый случай I при попытке извлечения из пустого регистра.
Переполнение.
Возникает, когда округленный результат арифметической команды с преобразованием формата превышает наибольшее конечное число в формате получателя. Маскированная реакция зависит от режима округления.
Денормализованный операнд.
Возникает при попытке оперировать денормализованным операндом. Маскированная реакция – установка бита D и продолжение операции, при незамаскированном варианте операнды не изменяются, устанавливается бит D и вызывается обработчик особого случая.
4. Блок – схема процессора
На основании анализа заданных операций укрупненная блок-схема процессора представлена на рис 4.1. В него входят оперативная память ОП, блок преобразования форматов данных БПФ, блок регистров БР, блок обработки данных БОД, блок микропрограммного управления БМУ. БПФ и ОП связаны 128-битной шиной и через нее передаются данные в ОП в формате m32real. БПФ осуществляет обратное преобразование из формата PT в OТ.
БР включает в себя регистровый стек, регистры слов тэгов, управления и состояния. Из БР в БПФ передается операнд из вершины стека в формате РТ (операция FSt). Из БР в БОД передаются 2 операнда в формате РТ для операции умножения (FMul) и из БОД в БР передается результат операции умножения в формате РТ в вершину стека. В БОД осуществляется операция умножения.
Управление операциями осуществляется БМУ путем выборки последовательности микрокодов (МК). Обратная связь от БПФ, БР и БОД к БМУ обеспечивается через шину осведомительных сигналов ОС.