stringtranslate.com

Сумматор Брента – Кунга

Сумматор Брента-Кунга ( BKA или BK ), предложенный в 1982 году [1] , представляет собой усовершенствованную конструкцию двоичного сумматора , имеющую глубину уровня затвора .

Введение

Сумматор Брента-Кунга представляет собой форму параллельного префиксного сумматора (PPA) сумматора с упреждающим переносом (CLA). Предложенный Ричардом Пирсом Брентом и Сян Те Кунгом в 1982 году, он обеспечивает более высокую регулярность структуры сумматора и имеет меньшую перегрузку проводки, что приводит к повышению производительности и уменьшению необходимой площади кристалла для реализации по сравнению с сумматором Когге-Стоуна (KSA). Это также намного быстрее, чем сумматоры с пульсирующим переносом (RCA).

Сумматоры со пульсирующим переносом были первыми многобитными сумматорами, которые были разработаны на заре и получили свое название от пульсационного эффекта, который создавал перенос при распространении справа налево. Время, затраченное на сложение, было прямо пропорционально длине добавляемого бита. В сумматорах Брента-Кунга все происходит наоборот, где перенос вычисляется параллельно, что значительно сокращает время сложения. Дальнейшая работа была проделана над сумматорами Брента-Кунга и другими параллельными сумматорами, чтобы уменьшить энергопотребление и площадь кристалла, а также увеличить скорость, что делает их подходящими для конструкций с низким энергопотреблением.

Сумматор Брента-Кунга представляет собой параллельный сумматор, выполненный по регулярной схеме с целью минимизации площади кристалла и простоты изготовления. Сложение n-битных чисел может выполняться вовремя с размером области чипа , что делает его подходящим сумматором с ограничениями по площади и максимизирует производительность. Его симметрия и регулярная структура эффективно снижают производственные затраты и позволяют использовать его в конвейерных архитектурах. В параллельных сумматорах критический путь определяется путем вычисления переноса от сумматора младшего значащего бита (LSB) к сумматору старшего бита (MSB), поэтому предпринимаются усилия по уменьшению критического пути переноса для достижения старшего бита.

Базовая схема модели

В общем, большинство сумматоров используют перенос и соответствующие биты двух чисел (A и B) для получения соответствующего бита суммы и переноса - при этом сумматорам со пульсирующим переносом требуется время, чтобы перенос достиг старшего разряда.

Брент и Кунг дополнительно преобразовали генерацию и распространение переноса, определив ассоциативный оператор , который определяет генерацию и распространение переноса по диапазону битов как
(g 1 , p 1 ) ○ (g 2 , p 2 ) = (g 1  ∨ ( п 1  ∧ г 2 ), п 1  ∧ п 2 ) .

Воспользовавшись ассоциативностью оператора , (Gn , Pn ) можно вычислить древовидным способом.

Конструкция белых узлов очевидна, поскольку они просто буферизуют значения gi и pi , а черные узлы выполняют операцию, определенную оператором , которая аналогична однобитному сумматору.

Заключительный этап обработки

Используя распространение переноса и преобразование генерации для отработки сложения и переноса, использованные Брентом и Кунгом, производительность сумматора значительно возрастает, а также приводит к увеличению регулярности. Окончательную сумму можно рассчитать следующим образом: s i  = p i  ⊕ G i-1 , поскольку p i  = a i  ⊕ b i и G i-1  = c i-1 .

Маломощный сумматор

Увеличение производительности сумматоров Брента-Кунга объясняется их древовидной структурой распространения переноса, которая также приводит к снижению энергопотребления, поскольку сигналу переноса теперь приходится проходить через меньшее количество каскадов, что приводит к меньшему количеству переключений транзисторов. Кроме того, уменьшение количества проводов и разветвлений также в значительной степени способствует более низкому энергопотреблению, чем у сумматоров CLA. Сумматор Брента-Кунга также может использоваться конвейерным способом, что может еще больше снизить энергопотребление за счет уменьшения глубины комбинаторной логики и стабилизации сбоев. [1] На графике показан маломощный сумматор Брента – Кунга. [2]

Сравнение с сумматором Когге – Стоуна.

Преимущества

Поскольку для реализации этого типа сумматора требуется меньше модулей, чем для сумматора Когге-Стоуна , сумматор Брента-Кунга построить гораздо проще. Он также содержит гораздо меньше соединений с другими модулями, что также способствует его простоте. [3]

Недостатки

Этот тип сумматора имеет большую задержку, [3] требуя 2 log 2 n - 2 уровней логики для вычисления всех битов переноса. (Когге-Стоуну требуется log 2 n .)

Уравнения

8-битный сумматор Когге-Стоуна, валентность-2:

P00 = A0 исключающее ИЛИ B0 '1dt, S0G00 = A0 И B0 '1dt, C0P10 = A1 исключающее ИЛИ B1 '1dt G10 = A1 И B1 '1dtP20 = A2 исключающее ИЛИ B2 '1dtG20 = A2 И B2 '1dtP30 = A3 исключающее ИЛИ B3 '1dtG30 = A3 И B3 '1dtP40 = A4 исключающее ИЛИ B4 '1dtG40 = A4 И B4 '1dtP50 = A5 исключающее ИЛИ B5 '1dtG50 = A5 И B5 '1dt P60 = A6 исключающее ИЛИ B6 '1dtG60 = A6 И B6 '1dtP70 = A7 исключающее ИЛИ B7 '1dtG70 = A7 И B7 '1dtG11 = G10 ИЛИ P10 И G00 '3dt, C1P21 = P20 И P10 '2dtG21 = G20 ИЛИ P20 И G10 '3dtP31 = P30 И P20 '2dtG31 = G30 ИЛИ P30 И G20 '3dtP41 = P40 И P30 '2dtG41 = G40 ИЛИ P40 И G30 '3dtP51 = P50 И P40 '2dtG51 = G50 ИЛИ P50 И G40 '3dtP61 = P60 И P50 '2dtG61 = G60 ИЛИ P60 И G50 '3dtP71 = P70 И P60 '2dtG71 = G70 ИЛИ P70 И G60 '3dtG22 = G21 ИЛИ P21 И G00 '4dt, C2G32 = G31 ИЛИ P31 И G11 '5dt, C3P42 = P41 И P21 '3dtG42 = G41 ИЛИ P41 И G21 '5dtP52 = P51 И P31 '3dtG52 = G51 ИЛИ P51 И G31 '5dtP62 = P61 И P41 '3dtG62 = G61 ИЛИ P61 И G41 '5dtP72 = P71 И P51 '3dtG72 = G71 ИЛИ P71 И G51 '5dtG43 = G42 ИЛИ P42 И G00 '6dt, C4G53 = G52 ИЛИ P52 И G11 '6dt, C5G63 = G62 ИЛИ P62 И G22 '6dt, C6G73 = G72 ИЛИ P72 И G32 '7dt, C7, CoutS0 = P00 '1dtS1 = P10 исключающее ИЛИ G00 '2dtS2 = P20 исключающее ИЛИ G11 '4dtS3 = P30 исключающее ИЛИ G22 '5dtS4 = P40 исключающее ИЛИ G32 '6dtS5 = P50 исключающее ИЛИ G43 '7dtS6 = P60 исключающее ИЛИ G53 '7dtS7 = P70 исключающее ИЛИ G63 '7dt

8-битный сумматор Когге-Стоуна, валентность-2,3,4:

P00 = A0 исключающее ИЛИ B0 '1dt, S0G00 = A0 И B0 '1dt, C0P10 = A1 исключающее ИЛИ B1 '1dtG10 = A1 И B1 '1dtP20 = A2 исключающее ИЛИ B2 '1dtG20 = A2 И B2 '1dtP30 = A3 исключающее ИЛИ B3 '1dtG30 = A3 И B3 '1dtP40 = A4 исключающее ИЛИ B4 '1dtG40 = A4 И B4 '1dtP50 = A5 исключающее ИЛИ B5 '1dtG50 = A5 И B5 '1dtP60 = A6 исключающее ИЛИ B6 '1dtG60 = A6 И B6 '1dtP70 = A7 исключающее ИЛИ B7 '1dtG70 = A7 И B7 '1dtG11 = G10 ИЛИ P10 И G00 '3dt, расстояние=2^0=1, валентность-2, C1P21 = P20 И P10 '2dtG21 = G20 ИЛИ P20 И G10 '3dt, расстояние=2^0=1, валентность-2P31 = P30 И P20 '2dtG31 = G30 ИЛИ P30 И G20 '3dt, расстояние=2^0=1, валентность-2P41 = P40 И P30 '2dtG41 = G40 ИЛИ P40 И G30 '3dt, расстояние=2^0=1, валентность-2P51 = P50 И P40 '2dtG51 = G50 ИЛИ P50 И G40 '3dt, расстояние=2^0=1, валентность-2P61 = P60 И P50 '2dtG61 = G60 ИЛИ P60 И G50 '3dt, расстояние=2^0=1, валентность-2P71 = P70 И P60 '2dtG71 = G70 ИЛИ P70 И G60 '3dt, расстояние=2^0=1, валентность-2G22 = G20 ИЛИ_ P20 И G10 ИЛИ_ P20 И P10 И G00 '3dt, расстояние=2^1=2, валентность-3, C2G32 = G30 ИЛИ_ P30 И G20 ИЛИ_ P30 И P20 И G10 ИЛИ_ P30 И P20 И P10 И G00 '3dt, расстояние=2^1=2, валентность-4, C3P42 = P41 AND P21 '3dt, расстояние=2^1=2G42 = G40 ИЛИ_ P40 И G30 ИЛИ_ P40 И P30 И G20 ИЛИ_ P40 И P30 И P20 И G10 '3dt, расстояние=2^1=2, валентность-4P52 = P51 И P31 '3dt, расстояние=2^1=2G52 = G50 ИЛИ_ P50 И G40 ИЛИ_ P50 И P40 И G30 ИЛИ_ P50 И P40 И P30 И G20 '3dt, расстояние=2^1=2, валентность-4P62 = P61 И P41 '3dt, расстояние=2^1=2G62 = G60 ИЛИ_ P60 И G50 ИЛИ_ P60 И P50 И G40 ИЛИ_ P60 И P50 И P40 И G30 '3dt, расстояние=2^1=2, валентность-4P72 = P71 И P51G72 = G70 ИЛИ_ P70 И G60 ИЛИ_ P70 И P60 И G50 ИЛИ_ P70 И P60 И P50 И G40 '3dt, расстояние=2^1=2, валентность-4G43 = G42 ИЛИ P42 И G00 '5dt, расстояние=2^2=4, валентность-2, C4G53 = G52 ИЛИ P52 И G11 '5dt, расстояние=2^2=4, валентность-2, C5G63 = G62 ИЛИ P62 И G22 '5dt, расстояние=2^2=4, валентность-2, C6G73 = G72 ИЛИ P72 И G32 '5dt, расстояние=2^2=4, валентность-2, C7S0 = P00 '1dtS1 = P10 исключающее ИЛИ G00 '2dtS2 = P20 исключающее ИЛИ G11 '4dtS3 = P30 исключающее ИЛИ G22 '4dtS4 = P40 исключающее ИЛИ G32 '6dtS5 = P50 исключающее ИЛИ G43 '6dtS6 = P60 исключающее ИЛИ G53 '6dtS7 = P70 исключающее ИЛИ G63 '6dt

8-битный сумматор Брента-Кунга, валентность-2:

P00 = A0 исключающее ИЛИ B0 '1dt, S0G00 = A0 И B0 '1dt, C0P10 = A1 исключающее ИЛИ B1 '1dtG10 = A1 И B1 '1dtP20 = A2 исключающее ИЛИ B2 '1dtG20 = A2 И B2 '1dtP30 = A3 исключающее ИЛИ B3 '1dtG30 = A3 И B3 '1dtP40 = A4 исключающее ИЛИ B4 '1dtG40 = A4 И B4 '1dtP50 = A5 исключающее ИЛИ B5 '1dtG50 = A5 И B5 '1dtP60 = A6 исключающее ИЛИ B6 '1dtG60 = A6 И B6 '1dtP70 = A7 исключающее ИЛИ B7 '1dtG70 = A7 И B7 '1dtG11 = G10 ИЛИ P10 И G00 '3dt, C1G21 = G20 ИЛИ P20 И G11 '3dt, C2P31 = P30 И P20 '2dtG31 = G30 ИЛИ P30 И G20 '3dtP51 = P50 И P40 '2dt G51 = G50 ИЛИ P50 И G40 '3dtP71 = P70 И P60 '2dt G71 = G70 ИЛИ P70 И G60 '3dtG32 = G31 ИЛИ P31 И G11 '5dt, C3P72 = P71 И P51 '3dtG72 = G71 ИЛИ P71 И G51 '5dt G53 = G51 ИЛИ P51 И G32 '7dt, C5G73 = G72 ИЛИ P72 И G32 '7dt, C7, CoutG44 = G40 ИЛИ P40 И G32 '7dt, C4G64 = G60 ИЛИ P60 И G53 '9dt, C6S0 = P00 '1dt S1 = P10 исключающее ИЛИ G00 '2dtS2 = P20 исключающее ИЛИ G11 '4dtS3 = P30 исключающее ИЛИ G21 '4dtS4 = P40 исключающее ИЛИ G32 '6dtS5 = P50 исключающее ИЛИ G44 '8dtS6 = P60 исключающее ИЛИ G53 '8dtS7 = P70 исключающее ИЛИ G64 '10dt

Рекомендации

  1. ^ аб Брент, Ричард Пирс ; Кунг, Сян Дэ (март 1982 г.) [июнь 1979 г.]. «Обычная схема для параллельных сумматоров». Транзакции IEEE на компьютерах . Кафедра компьютерных наук, Университет Карнеги-Меллон, США. С-31 (3): 260–264. дои : 10.1109/TC.1982.1675982. ISSN  0018-9340. S2CID  17348212. CMS-CS-79-131. Архивировано из оригинала 24 сентября 2017 года.
  2. ^ Александр, Джонатан (2004). «Советы по проектированию VHDL и методы проектирования с низким энергопотреблением» . Проверено 21 апреля 2018 г.
  3. ^ аб Пойнтер, Роби (14 ноября 2012 г.). «Как складывать цифры (часть 2)». robey.lag.net . Архивировано из оригинала 21 апреля 2018 г. Проверено 21 апреля 2018 г.

дальнейшее чтение

Внешние ссылки