Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[204]

этапе параллельно работающие сумматоры требуют времени 0(1), этапов в (lgra), последнее сложение (с предвычислением переносов) тоже требует времени в (lgra), так что общее время будет в (lgra) при размере в(га2).

Дерево Уоллеса для га = 8 показано на рис. 29.16. На самом деле это не дерево, а ориентированный граф без циклов, но мы сохраняем традиционное название. Мы складываем 8 частичных произведений mS°\ ... , т7\ числа на стрелках указывают количество разрядов в складываемых числах (raW содержит га+г битов, о числе битов на выходе сумматора с запоминанием переносов см. упражнение 29.3-3). Последнее сложение (слагаемые имеют длины 2га - 1 и 2га, сумма имеет длину 2га) выполняется с помощью сумматора с предвычислением переносов.

Рис. 29.16 29.16 Дерево Wallacea для сложения частичных произведений т0, . . . , т7. Каждая стрелка обозначает число указанной разрядности.

29.3.4. Характеристики схемы

Обозначим глубину дерева Уоллеса для га слагаемых через D(n). На каждом уровне из каждых трёх чисел делается по два, да ещё два может остаться (как случилось на первом шаге на рис. 29.16), так что

Отсюда в силу теоремы 4.1 (случай 2) имеем D(n) = ©(lgra). Частичные произведения могут быть вычислены за время 0(1), каждый из шагов сложения с запоминанием переносов также требует времени 0(1), а сложение двух слагаемых размера ©(га) (последний шаг) требует времени 0(lg га). Поэтому общее время работы составляет 0(lg га).

Покажем теперь, что размер схемы равен ©(га2). Ясно, что он составляет не менее £7(га2), поскольку уже на верхнем ярусе имеется [~2га/3] блоков, каждый из которых содержит не менее га сумматоров. Оценим теперь размер схемы сверху. Поскольку результат сложения имеет 2га разрядов, число сумматоров в каждом из блоков не превосходит 2га. Остаётся показать, что число блоков (обозначим его С(га)) не превосходит 0(га). В самом деле,

0если га 2

1если га = 3

L>([2ra/3]) + l если га 4

1 если га = 3

откуда в силу теоремы 4.1 (случай 3) следует, что С(га) = 0(га). Таким образом, общее число элементов во всех сумматорах дере-


ва Уоллеса не превосходит 0(га2). Так же оценка справедлива для элементов, вычисляющих частичные произведения, а сумматор с предвычислением переносов имеет размер 0(га). Значит, размер всего умножителя равен 0(га2).

Хотя умножитель с помощью дерева Уоллеса имеет (асимптотически) тот же размер, что и матричный, и при этом работает (асимптотически) быстрее, он не столь удобен на практике, так как имеет нерегулярную структуру (и элементы трудно плотно разместить на плате). Поэтому используется промежуточный вариант: частичные произведения разбиваются на две половины, каждая складывается с помощью матричного умножителя, из 4 оставшихся чисел делает два с помощью двукрвтного использования сумматора с запоминанием переносов, наконец, два числа складываются с помощью сумматора с предвычислением переносов. Это почти вдвое уменьшает задержку по сравнению с одним матричным умножителем.

29.3.5. Упражнения

(г)

29.3-1 Докажите, что в матричном умножителе Vj=0 при j = 0,1,... ,i,i-\-n,i-\-n-\- 1,... ,2га- 1.

29.3-2 Измените схему матричного умножителя на рис. 29.14 так, чтобы в верхнем ряду из суммирующих элементов FA остался только один.

29.3-3 Пусть при сложении с запоминанием переносов из чисел ж, у и z получаются числа s и с. Пусть пх, пу, пх, пс, ns - разрядности соответствующих чисел и пх пу nz. Докажите, что ns = nz и

29.3-4 Показать, что дополнительное ограничение 0(1) на выходную степень всех проводов не мешает построить схему умножителя глубины О (lgra) и размера О (га2).

29.3-5 Постройте эффективную схему для деления двоичного числа на 3. (Указание. 0.010101... = 0.01 • 1.01 • 1.0001 •...).

29.3-6 Схема циклического сдвига (cyclic shifter, barrel shifter) имеет два входа ж = (жп ь жп 2,... , ж0) и s = (sm i, sm 2,... , s0), где m = [(lg га)] и выход у = (yn-i,yn-2, , Уо), получаемый из ж циклическим сдвигом на s позиций вправо: уг- = х+топ при [г = 0,1,... , га - 1). Как описать эту функцию в терминах умножения остатков?

nz если пу < nz nzA- \ если пу = nz

z 1


29.4. Тактированные схемы

Поскольку схема из функциональных элементов не содержит циклов, каждый элемент в ней используется только один раз. Элементы задержки позволяют использовать один и тот же функциональный элемент многократно (в разные моменты времени), что позволяет уменьшить размер схемы.

В этом разделе рассматриваются тактированные схемы (clocked circuits) для сложения и умножения. Устройство побитового сложения имеет размер 0(1) и складывает два га-разрядных числа за время О (га). Линейный умножитель умножает два га-значных числа за время 0(га) и имеет размер 0(га).

29.4.1. Устройство побитового сложения

На рис. 29.17 показана схема для сложения двух га-разрядных чисел а = (ага-ъ ап-2 , ао) и 6 = {bn-\, Ьп-2 ,Ьо), состоящая только из одного сумматора. Биты поступают на входы последовательно: сначала ао и bo, затем а\ и Ь\, и т. д. При этом выходной бит переноса надо подать на вход сумматора, но не сразу, а в момент поступления следующего разряда.

Рис. 29.17 Устройство побитового сложения. Между г-м и (г + 1)-м импульсами на входы сумматора FA поступают значения а, и Ь, извне и значение с, из регистра. Сумматор вычисляет значения s, и c;+i; последнее запоминается в регистре для следующего шага. В начальный момент регистр содержит значение со = 0. На рисунках (а)-(е) показаны пять этапов сложения чисел а = (1011) и Ъ = (1001)

Такая задержка осуществляется в тактированных схемах (clocked circuits). Такая схема содержит один или несколько регистров (элементов задержки), а также схему из функциональных элементов, входами которой являются, помимо входов тактированной схемы, выходы регистров. Её выходы служат выходами тактированной схемы, а также входами регистров. Как и раньше, схема из функциональных элементов не должна иметь циклов (обратная связь осуществляется только через элементы задержки).

Элемент задержки, или регистр (register) получает сигналы тактового генератора (clock), который через равные промежутки времени выдаёт тактовые импульсы (ticks). Мы считаем, что наши схемы имеют общий для всех регистров тактовый генератор (globally clocked circuits).

При каждом импульсе регистр запоминает текущее значение на входе. Вслед за этим это значение появляется на выходе, и тем самым поступает на входы схемы из фцнкциональных элементов.



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51] [стр.52] [стр.53] [стр.54] [стр.55] [стр.56] [стр.57] [стр.58] [стр.59] [стр.60] [стр.61] [стр.62] [стр.63] [стр.64] [стр.65] [стр.66] [стр.67] [стр.68] [стр.69] [стр.70] [стр.71] [стр.72] [стр.73] [стр.74] [стр.75] [стр.76] [стр.77] [стр.78] [стр.79] [стр.80] [стр.81] [стр.82] [стр.83] [стр.84] [стр.85] [стр.86] [стр.87] [стр.88] [стр.89] [стр.90] [стр.91] [стр.92] [стр.93] [стр.94] [стр.95] [стр.96] [стр.97] [стр.98] [стр.99] [стр.100] [стр.101] [стр.102] [стр.103] [стр.104] [стр.105] [стр.106] [стр.107] [стр.108] [стр.109] [стр.110] [стр.111] [стр.112] [стр.113] [стр.114] [стр.115] [стр.116] [стр.117] [стр.118] [стр.119] [стр.120] [стр.121] [стр.122] [стр.123] [стр.124] [стр.125] [стр.126] [стр.127] [стр.128] [стр.129] [стр.130] [стр.131] [стр.132] [стр.133] [стр.134] [стр.135] [стр.136] [стр.137] [стр.138] [стр.139] [стр.140] [стр.141] [стр.142] [стр.143] [стр.144] [стр.145] [стр.146] [стр.147] [стр.148] [стр.149] [стр.150] [стр.151] [стр.152] [стр.153] [стр.154] [стр.155] [стр.156] [стр.157] [стр.158] [стр.159] [стр.160] [стр.161] [стр.162] [стр.163] [стр.164] [стр.165] [стр.166] [стр.167] [стр.168] [стр.169] [стр.170] [стр.171] [стр.172] [стр.173] [стр.174] [стр.175] [стр.176] [стр.177] [стр.178] [стр.179] [стр.180] [стр.181] [стр.182] [стр.183] [стр.184] [стр.185] [стр.186] [стр.187] [стр.188] [стр.189] [стр.190] [стр.191] [стр.192] [стр.193] [стр.194] [стр.195] [стр.196] [стр.197] [стр.198] [стр.199] [стр.200] [стр.201] [стр.202] [стр.203] [стр.204] [стр.205] [стр.206] [стр.207] [стр.208] [стр.209] [стр.210] [стр.211] [стр.212] [стр.213] [стр.214] [стр.215] [стр.216] [стр.217] [стр.218] [стр.219] [стр.220] [стр.221] [стр.222] [стр.223] [стр.224] [стр.225] [стр.226] [стр.227] [стр.228] [стр.229] [стр.230] [стр.231] [стр.232] [стр.233] [стр.234] [стр.235] [стр.236] [стр.237] [стр.238] [стр.239] [стр.240] [стр.241] [стр.242] [стр.243] [стр.244] [стр.245] [стр.246] [стр.247] [стр.248] [стр.249] [стр.250] [стр.251] [стр.252] [стр.253] [стр.254] [стр.255] [стр.256] [стр.257] [стр.258] [стр.259] [стр.260] [стр.261] [стр.262] [стр.263] [стр.264] [стр.265] [стр.266] [стр.267] [стр.268] [стр.269] [стр.270] [стр.271] [стр.272] [стр.273] [стр.274] [стр.275] [стр.276] [стр.277] [стр.278] [стр.279] [стр.280] [стр.281] [стр.282] [стр.283] [стр.284] [стр.285] [стр.286] [стр.287] [стр.288] [стр.289] [стр.290] [стр.291] [стр.292] [стр.293] [стр.294]