Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Схема 4-битного рычажного механизма переключения поперечной балки. «x» обозначает входные биты, а y обозначает выходные биты.

Баррель переключение является цифровой схемой , которая может перейти в слове данных в соответствии с заданным количеством бит , без использования какой - либо последовательной логики , только чистая комбинационной логику , т.е. по своей природе обеспечивает бинарную операцию . Однако теоретически он также может использоваться для реализации унарных операций , таких как логический сдвиг влево , в случаях, когда они ограничены фиксированной величиной (например, для блока генерации адреса ) на фиксированную величину. Один из способов реализовать баррель-шифтер - это последовательность мультиплексоров.где выход одного мультиплексора соединен со входом следующего мультиплексора способом, который зависит от расстояния сдвига. Баррель переключения часто используется для сдвига и поворота н-битов в современных микропроцессорах, [ править ] , как правило , в пределах одного цикла синхронизации .

Например, возьмем четырехбитный цилиндрический сдвигатель со входами A, B, C и D. Сдвигатель может циклически изменять порядок битов ABCD как DABC , CDAB или BCDA ; в этом случае биты не теряются. То есть он может сдвинуть все выходы вправо на три позиции (и, таким образом, создать любую циклическую комбинацию A, B, C и D). Баррель-шифтер имеет множество применений, в том числе является полезным компонентом микропроцессоров (наряду с ALU ).

Реализация [ править ]

Барабанный переключатель часто реализуется как каскад параллельных мультиплексоров 2 × 1. Для 8-битного цилиндрического устройства сдвига используются два промежуточных сигнала, которые сдвигаются на четыре и два бита или передают одни и те же данные в зависимости от значения S [2] и S [1]. Затем этот сигнал сдвигается другим мультиплексором, которым управляет S [0]:

 int1 = IN, если S [2] == 0 = IN << 4, если S [2] == 1 int2 = int1, если S [1] == 0 = int1 << 2, если S [1] == 1 OUT = int2, если S [0] == 0 = int2 << 1, если S [0] == 1

У более крупных рычагов переключения передач есть дополнительные ступени.

Стоимость [ править ]

Количество мультиплексоров, необходимых для n- битного слова, составляет . [1] Ниже перечислены пять стандартных размеров слова и необходимое количество мультиплексоров:

  • 128-битный -
  • 64-битный -
  • 32-битный -
  • 16 бит -
  • 8-битный -

Стоимость критического пути в FO4 , (ориентировочная, без учета проволочной задержки):

  • 32-разрядная версия: с 18 FO4 до 14 FO4 [2]

Использует [ редактировать ]

Обычно баррель-шифтер используется в аппаратной реализации арифметики с плавающей запятой . Для операции сложения или вычитания с плавающей запятой значения двух чисел должны быть выровнены, что требует сдвига меньшего числа вправо, увеличения его экспоненты , пока она не совпадет с показателем большего числа. Это делается путем вычитания экспонент и с помощью поворотного переключателя сдвига меньшего числа вправо на разницу за один цикл. Если бы использовался простой сдвигатель, сдвиг на n битовых позиций потребовал бы n тактов. [ необходима цитата ]

См. Также [ править ]

  • Круговой сдвиг

Ссылки [ править ]

  1. ^ Кренинг, Даниил; Стрихман, Офер (2008). Процедуры принятия решений . Springer . п. 159. ISBN. 978-3-540-74104-6.
  2. ^ Ван, Дэвид Т. (2002-08-15). «Возвращаясь к метрике FO4» . Проверено 19 мая 2016 .

Внешние ссылки [ править ]

  • Баррель-шифтер (8 бит) , Гамбургский университет
  • Реализация переключателей ствола с использованием множителей (Пол Джильотти, 2004-08-17)

Дальнейшее чтение [ править ]

  • Кронинг, Даниэль; Стрихман, Офер (2008). Процедуры принятия решений . Springer . ISBN 978-3-540-74104-6.

Эта статья основана на материалах, взятых из Free On-line Dictionary of Computing до 1 ноября 2008 г. и включенных в соответствии с условиями «перелицензирования» GFDL версии 1.3 или новее.