СХЕМОТЕХНИКА ЭВМ_18.2.17 (855859), страница 26
Текст из файла (страница 26)
Дополнительные выходы — образование ускоренного переноса G и распространение ускоренного переноса Р — используются только при организации многоразрядных АЛУ в случае их сочетания с блоком ускоренного переноса К155ИП4 (или 564ИП4 для микросхем КМОП), о чем будет сказано ниже.
Все виды операций и результаты вычислений применительно к положительной логике сведены в таблицу 7.4.
Таблица 7.4 - Функциональная зависимость выходов микросхемы ИПЗ от состояния
Входов (положительная логика)
Выбор функции S3 S2 S1 S0 | ВЫХОД-Логические операции (на входе М=1) | ВЫХОД-Логико-Арифметические операции (на входе М=0) |
0 0 0 1 |
|
|
0 0 1 0 |
|
|
0 0 1 1 |
|
|
0 1 0 0 |
|
|
0 1 0 1 |
|
|
0 1 1 0 |
|
|
0 1 1 1 |
|
|
1 0 0 0 |
|
|
1 0 0 1 |
|
|
1 0 1 0 |
|
|
1 0 1 1 |
|
|
1 1 0 0 |
|
|
1 1 0 1 |
|
|
1 1 1 0 |
|
|
1 1 1 1 | A |
|
В таблице 7.4 предполагается ,что арифметические операции выполняются в дополнительном коде. Как отмечалось, числа в дополнительном и в обратном коде связаны простым соотношением Nдоп = No6p+1 или No6p=Nдоп - 1. Поэтому в тех строках таблицы 7.4, где указана операция «минус 1», результат арифметических действий представлен в обратном коде.
Старший разряд кода выбора операций (вход М) определяет характер действий, выполняемых АЛУ. Когда на этом входе сигнал высокого уровня(М=1), АЛУ производит логические операции поразрядно над каждой парой бит слов А и В. Внутренний перенос в этом режиме бездействует.
Если АЛУ выполняет логико-арифметическую операцию(М=0), логическая функция реализуется поразрядно, а арифметическая с переносом.
Например, входному коду MS3S2S1S0=011012 отвечает операция (А˅В) плюс А (третья снизу строка таблицы 7.4). Первой выполняется операция в скобках - (А˅В) - логическое сложение двух слов. Если А=10102 В=01112, то первая операция дает (А˅В)=11112 .Второй выполняется операция арифметического сложения числа А с результатом логического сложения. Следовательно 11112 плюс 10102=111112.
При использовании АЛУ в качестве компаратора сигнал снимают с входа А=В (вывод 14). Этот выход — с открытым коллектором, и к источнику питания его следует подключать через внешний резистор 1 кОм.
Режим компаратора обеспечивается при М=1 и S3S2S1S0=01102. Когда числа А и В равны, на входе А=В формируется сигнал высокого уровня.
Одновременно на выходе Сn+4 (вывод 16) характеризует соотношение между числами А и В и в случае их неравенства согласно таблицы 7.4.
Для арифметических действий над словами большей длины АЛУ включают последовательно. В этом случае время суммирования определяется задержкой распространения сигнала переноса со входа младшего разряда до выхода с последнего АЛУ и составляет tзд.р=4τзд.р, где τ — задержка распространения сигнала переноса в одной АЛУ.
Таблица 7.5 - Таблица истинности микросхемы К155ИП3 в режиме четырёх разрядного компаратора (S3=0, S2=1, S1=1, S0=0)
Вид логики | Состояние входов | Состояние выхода Сn+4 |
Сn | А и В | |
Положительная логика | А≤В | |
А<В | ||
А>В | ||
А≥В |
Уменьшить время суммирования можно применением микросхем К155ИП4 (564ИП4,LS 182), специально разработанных для организации ускоренного переноса между отдельными АЛУ, а также между группами АЛУ. Со схемой ускоренного переноса время суммирования сокращается примерно до τзд.р
Если при выполнении арифметических операций к быстродействию не предъявляется высоких требований, то при каскадировании АЛУ схемы ускоренного переноса не используют.
7.11. АЛУ для сложения и вычитания чисел с плавающей запятой
П редставление числа Z в компьютере в формате с плавающей запятой имеет следующий вид
В этой формуле: q – основание системы счисления (обычно 2),
N – порядок (целое число длиной k + 1 со знаком), M – мантисса числа (правильная дробь со знаком длиной r + 1).
Мантисса числа называется нормализованной, если в старшем разряде находится единица.
Ф ормат числа с плавающей запятой имеет следующий вид
Мантисса имеет 9 двоичных разрядов, порядок – 5 двоичных разрядов. В 15 и 9 разрядах записываются знак порядка и мантиссы. Запятая неявно расположена перед 8-м разрядом.
В современных компьютерах используются представления чисел в формате с плавающей запятой, содержащим 32, 64 или 80 двоичных разрядов. Увеличение числа двоичных разрядов в формате числа с плавающей запятой повышает точность вычислений.
Поскольку арифметические действия над числами с плавающей запятой требуют отдельных операций над мантиссами и порядками, то для управления операцией над порядками, операции проводятся над целыми положительными числами, применяя представление чисел со смещенными порядками. Для этого при записи числа в память к его порядку N прибавляется целое число – смещение , где k – число двоичных разрядов, используемый для расположения модуля порядка в разрядной сетке, тогда смещенный порядок Nc = N + S и, поэтому всегда будет положительным. Тогда для его представления необходимо такое же количество разрядов как и для модуля порядка
.
Свойства смещенного порядка. Если N' > N'', то и N'c > N''c . Следовательно, смещение порядков не влияет на операции с числами. Сложение и вычитание чисел с плавающей запятой производится по следующей формуле [не очень понятно, что к чему]
Алгоритм сложения и вычитания чисел с плавающей запятой
-
Производится выравнивание порядков чисел. Порядок меньшего по модулю числа принимается равным порядку большего числа, а мантисса меньшего числа сдвигается вправо на число разрядов, равное разности порядков чисел.
-
Производится сложение или вычитание мантисс;
-
Порядок суммы или разности принимается равным порядку большего числа;
-
Полученная сумма/разность нормализуется. В зависимости от типа ЭВМ арифметических операций над мантиссами и порядками выполняются либо отдельными узлами АЛУ, либо последовательно одним узлом.
Операция сложения и вычитание состоит из следующих этапов.
-
Прием операндов;
-
Выравнивание порядков со сдвигом мантисс;
-
Сложение мантисс (аналогично сложению целых чисел);
-
Нормализация результата.
Функциональная схема АЛУ для арифметических операций с плавающей запятой приведена на следующем рисунке [что куда и как поступает]
Рис. 7.14. Функциональная схема АЛУ для выполнения арифметических операций с плавающей запятой
АЛУ в режиме сложения работает следующим образом:
1. Запись исходных данных. В Рег. 1 и Рег. 3 с шины записываются слагаемые А и В. Знаки слагаемых запоминаются в специальных триггерах, находящихся в УУ.
2. Выравнивание порядков чисел. Порядки чисел из Рег. 1 и Рег. 3 записываются в регистры Рег. C и Рег. D блока обработки порядков БлОП. В этом блоке проводится сравнение этих чисел, затем мантисса числа с меньшим порядком сдвигается вправо в регистре Рег. 1 или Рег. 3 на величину разности разрядов, при этом порядки чисел выравниваются, а сумме присваивается порядок большего числа.
В зависимости от разности порядков возможны следующие ситуации:
1. Nx – Ny > m ( m – число разрядов мантиссы). [пример]
В этом случае в регистре мантиссы числа My после сдвига окажутся нули. Сумме в этом случае присваивается значения мантиссы числа Mx.
2. Ny – Nx > m. [пример]
В этом случае в регистре мантиссы числа Mx после сдвига окажутся нули. Сумме в этом случае присваивается значения мантиссы числа My.
3. Ny = Nx (порядки двух чисел одинаковы). [пример]
Мантиссы складываются без сдвига.