Сумматор с пропуском переноса
Часть серии о | |||||||
Арифметико-логические схемы | |||||||
---|---|---|---|---|---|---|---|
Быстрая навигация | |||||||
Теория | |||||||
Компоненты
| |||||||
Категории | |||||||
См. также | |||||||
Сумматор с пропуском переноса [номер 1] (также известный как сумматор с обходом переноса ) — это реализация сумматора , которая улучшает задержку сумматора с пульсирующим переносом без особых усилий по сравнению с другими сумматорами. Улучшение задержки в наихудшем случае достигается за счет использования нескольких сумматоров с пропуском переноса для формирования сумматора с пропуском переноса по блоку.
В отличие от других быстрых сумматоров, производительность сумматора с пропуском переноса увеличивается только при использовании некоторых комбинаций входных битов. Это означает, что улучшение скорости является лишь вероятностным .
Одиночный сумматор с пропуском переноса
[ редактировать ]Худший случай для простого одноуровневого сумматора с пульсирующим переносом возникает, когда условие распространения [1] верно для каждой пары цифр . Затем перенос распространяется по -битный сумматор и появляется как перенос после .

Для каждой пары входных битов операнда условия распространения определяются с помощью XOR-вентиля. Когда все условия распространения истинны , тогда бит переноса определяет бит переноса.
Сумматор с n -битным переносом и пропуском состоит из n -битной цепи переноса пульсаций, n -входного И-вентиля и одного мультиплексора.Каждый бит распространения , который обеспечивается цепочкой переноса пульсаций, подключен к n -входу И-вентиля. Результирующий бит используется в качестве бита выбора мультиплексора, который переключает либо последний бит переноса, либо последний бит переноса. или переноска к сигналу о проведении .
Это значительно уменьшает задержку сумматора на его критическом пути, поскольку бит переноса для каждого блока теперь может «пропускать» блоки с сигналом группового распространения, установленным на логику 1 (в отличие от длинной цепочки пульсирующего переноса, которая потребовала бы перенос для пульсации каждого бита сумматора).Количество входов И-вентиля равно ширине сумматора. При большой ширине это становится непрактичным и приводит к дополнительным задержкам, поскольку И-вентиль приходится строить в виде дерева. Хорошая ширина достигается, когда логика суммы имеет ту же глубину, что и n -входной логический элемент И и мультиплексор.

Производительность
[ редактировать ]Критический путь сумматора переноса-пропуска начинается с первого полного сумматора, проходит через все сумматоры и заканчивается битом суммы. . Сумматоры переноса-пропуска объединены в цепочку (см. сумматоры блочного переноса-пропуска), чтобы уменьшить общий критический путь, поскольку один -битный сумматор переноса-пропуска не имеет реального преимущества в скорости по сравнению с -битный сумматор с пульсирующим переносом.
Логика пропуска состоит из -входной И-вентиль и один мультиплексор.
Поскольку сигналы распространения вычисляются параллельно и доступны заранее, критический путь для логики пропуска в сумматоре с пропуском переноса состоит только из задержки, налагаемой мультиплексором (условный пропуск).
- .
Блокировать сумматоры с пропуском переноса
[ редактировать ]
Сумматоры с пропуском переноса по блоку состоят из нескольких сумматоров с пропуском переноса. Существует два типа сумматоров с блочным переносом и пропуском.Два операнда и разделены на блоки биты.
- Почему используются сумматоры типа «блок-перенос-пропуск»?
- Должен ли размер блока быть постоянным или переменным?
- Фиксированная ширина блока и переменная ширина блока
Сумматоры фиксированного размера с переносом блоков и пропуском блоков
[ редактировать ]Сумматоры фиксированного размера с переносом блоков и пропуском разделяют биты входных битов в блоки бит каждый, что приводит к блоки.Критический путь состоит из волнистого пути и элемента пропуска первого блока, путей пропуска, заключенных между первым и последним блоком, и, наконец, пульсирующего пути последнего блока.
Оптимальный размер блока для заданной ширины сумматора n определяется равенством 0
Реализуемы только положительные размеры блоков.
Сумматоры переменного размера с переносом блоков и пропуском блоков
[ редактировать ]Производительность можно улучшить, т. е. все переносы распространяются быстрее, изменяя размеры блоков. Соответственно, начальные блоки сумматора делаются меньшими, чтобы быстро обнаружить генераторы переноса, которые должны распространяться дальше, средние блоки делаются больше, поскольку они не являются проблемным случаем, а затем наиболее важные блоки снова уменьшаются, так что опоздавшие входные данные переноса могут быть быстро обработаны.
Многоуровневые сумматоры с пропуском переноса
[ редактировать ]Используя дополнительные блоки пропуска на дополнительном слое, сигналы распространения блоков далее суммируются и используются для выполнения больших пропусков:
Таким образом, сумматор становится еще быстрее.
Оптимизация переноса и пропуска
[ редактировать ]Проблема определения размеров блоков и количества уровней, необходимых для создания физически самого быстрого сумматора с пропуском переноса, известна как «задача оптимизации сумматора с пропуском переноса». Эта проблема усложняется тем фактом, что сумматоры с пропуском переноса реализованы на физических устройствах, размер и другие параметры которых также влияют на время сложения.
Задача оптимизации переноса-пропуска для блоков переменного размера и нескольких уровней для узла процесса произвольного устройства была решена Томасом В. Линчем. [2] В этой ссылке также показано, что добавление переноса-пропуска аналогично параллельному добавлению префиксов и, таким образом, связано, а для некоторых конфигураций идентично Han-Carlson , [3] [4] Брент -Кунг , [5] сумматор Когге -Стоуна [6] и ряд других типов сумматоров.
Обзор реализации
[ редактировать ]Если разбить это на более конкретные термины, то для создания 4-битного сумматора с обходом переноса 6 полных сумматоров потребуется . Входные шины будут 4-битными A и 4-битными B с сигналом переноса ( CIN ). Выходом будет 4-битная шина X и сигнал выполнения ( COUT ).
Первые два полных сумматора складывают первые два бита. Сигнал проведения со второго полного сумматора ( ) будет управлять сигналом выбора для трех мультиплексоров 2 к 1. Второй набор из двух полных сумматоров добавит последние два бита, предполагая, что является логическим 0. И окончательный набор полных сумматоров предполагает, что это логическая 1.
Затем мультиплексоры контролируют, какой выходной сигнал используется для COUT . и .
Примечания
[ редактировать ]- ^ Сумматор с пропуском переноса часто сокращается как CSA, однако его можно спутать с сумматором с сохранением переноса .
Ссылки
[ редактировать ]- ^ Пархами, Бехруз (2000). Компьютерная арифметика: алгоритмы и конструкции аппаратного обеспечения . Издательство Оксфордского университета . п. 108 . ISBN 0-19-512583-5 .
- ^ Линч, Томас Уокер (май 1996 г.). «Двоичные сумматоры» (Диссертация). Техасский университет . Архивировано (PDF) из оригинала 14 апреля 2018 г. Проверено 14 апреля 2018 г.
- ^ Хан, Тэкдон; Карлсон, Дэвид А.; Левитан, Стивен П. (октябрь 1982 г.). «Разработка СБИС высокоскоростных схем сложения малой площади» . Материалы Международной конференции IEEE 1981 года по компьютерному дизайну: СБИС в компьютерах и процессорах . IEEE : 418–422. ISBN 0-81860802-1 .
- ^ Хан, Тэкдон; Карлсон, Дэвид А. (октябрь 1987 г.). «Быстрые и эффективные по площади сумматоры СБИС». Материалы 8-го симпозиума по компьютерной арифметике . IEEE : 49–56.
- ^ Брент, Ричард Пирс ; Кунг, Сян Те (март 1982 г.). «Обычная схема параллельных сумматоров» (PDF) . Транзакции IEEE на компьютерах . С-31 (3): 260–264. дои : 10.1109/TC.1982.1675982 . S2CID 17348212 . Архивировано из оригинала 24 сентября 2017 года.
- ^ Когге, Питер Майкл ; Стоун, Гарольд С. (август 1973 г.). «Параллельный алгоритм эффективного решения общего класса рекуррентных уравнений». Транзакции IEEE на компьютерах . С-22 (8): 786–793. дои : 10.1109/TC.1973.5009159 . S2CID 206619926 .