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

Два варианта быстрых схем

1). Аппаратное умножение

Pi+1 = Pi + A×2×bi+1

См. Угрюмов «Элементы и узлы ЦЭВМ»

 
  Построение специализированных схем - student2.ru

Если не хотим задержку для регистра, за каждой операцией умножения закрепляем сумматор.

       
  Построение специализированных схем - student2.ru
 
    Построение специализированных схем - student2.ru

t - задержка на каждом сумматоре

(2n-1)t - время на умножение двух n-разрядных чисел

в результате умножение происходит примерно в два раза медленнее, чем обычное сложение ( )

Для построения быстрого устройства умножения используется методика закрепления – за каждой операцией закрепляется свое устройство

2). Табличный способ

Построение специализированных схем - student2.ru Аргумент линейно возрастает

Значение аргумента совпадает с номером строки – хорошая таблица

Аргумент – адрес

Значение функции – то значение, которое хранится по адресу

       
    Построение специализированных схем - student2.ru
  Построение специализированных схем - student2.ru
 

Такая организация каких-либо операций – это основа таблично-алгоритмических методов

Память (ЗУ) не является памятью автомата

ЗУ, которое в течение работы не меняет своего значения – это КС (комбинационная схема); если память меняет свое значение, то это память автомата.

Рассмотрим таблицу, в которой приводится объем памяти ЗУ для хранения результатов операции умножения двух чисел;

n – разрядность множимого и множителя

2n – разрядность произведения

n V1 V2 V3
64Kб ´ 16р 256 б ´ 16р 16 б ´ 8р
4Гб ´ 32р 64 Кб ´ 32р 256 б ´ 16р
234Гб ´ 64р 4 Гб ´ 64р 64 Кб ´ 32р

1 – перемножаются 8-ми разрядные числа

2 – перемножаются 16-ти разрядные числа

3 – перемножаются 32-х разрядные числа

V1 – обычное умножение; имеется 2n множимых 2n множителей, в итоге количество результатов 2n ×2n×n

Например, умножаются два 16-ти разрядных числа

216*216 – количество результатов операции умножения

16 – разрядность результата

216*216*16 бит ´ 32р = 230*22 ´ 32р = 4 Гб ´ 32р будет занимать таблица результатов

Попытаемся уменьшить объем таблицы

V2 рассмотрим вычисление меньшего объема

(A – B)2 = A2 + B2 – 2·A·B квадрат разности

т.е. произведение двух чисел можно представить в виде

Построение специализированных схем - student2.ru

Умножение при наличии таблицы квадратов можно осуществить примерно за 6 тактов

Например, умножаются два 8-ми разрядных числа

28 – возможное количество результатов операции умножения

28*16р = 256 ´ 16р будет занимать таблица результатов

V3 рассмотрим вычисление меньшего объема

Разобьем число на две части

Построение специализированных схем - student2.ru Построение специализированных схем - student2.ru A = A1 + A2 · 2n/2

Построение специализированных схем - student2.ru сдвиг вправо на n/2 разрядов

Построение специализированных схем - student2.ru

AB = (A1+A2·2n/2)·( B1+B2·2n/2) = A1·B1 + A1·B2·2n/2 + A2·B1·2n/2 + A2·B2·2n

Умножение двух чисел будем производить как в предыдущем случае

Например, умножаются два 8-ми разрядных числа

24 – возможное количество результатов операции умножения

24*4р = 256 ´ 8р будет занимать таблица результатов

Малорегистровая и многорегистровая структура автоматов. Варианты реализации аккумулятора.

Если n ³ 4 (n – число слов), то выгодно использовать РЗУ

Слова – известные программе или некоторые внутренние (собственные) слова алгоритма

Например, вспомним команду JSB (переход на подпрограмму) – под считанный адрес отводится внутренняя переменная

Построение специализированных схем - student2.ru

Микропрограммный аккумулятор – аккумулятор это одна из ячеек РЗУ, доступ к нему осуществляется как к одному из регистров; может быть обращение к аккумулятору по умолчанию

Рграсш вводится для ускорения операций умножения, деления

Регистры собираются в РЗУ

Микрокоманда – совокупность УС (управляющих сигналов), вырабатываемых за 1 такт.

Наши рекомендации