Bit Concat

Конкатенации до 128 входных слов в один выход

Библиотека

HDL Coder / Логика и Битовые операции

  • Bit Concat block

Описание

Блок Bit Concat конкатенирует до 128 входных слов в один выход. Входной порт пометил L определяет входное слово самое низкоуровневое. Порт пометил H определяет входное слово самого высокого порядка. Блок использует bitconcat функционируйте таким образом, что справа налево упорядоченное расположение слов в выходе следует за низким-к-высокому упорядоченным расположением входных сигналов. Чтобы изучить, как блок действует, см. Алгоритмы.

Параметры

Number of Inputs: Введите целое число, задающее количество входных сигналов. Количество входных портов блока обновляется, когда вы изменяете Number of Inputs.

  • Значение по умолчанию: 2

  • Минимум: 1

  • Максимум: 128

Внимание

Убедитесь, что Number of Inputs равен количеству сигналов, которые вы соединяете с блоком. Если блок имеет несвязанные входные параметры, ошибка происходит во время генерации кода.

Порты

Блок имеет до 128 входных портов с H представление самого высокого порядка ввело слово и L представление входного слова самого низкоуровневого. Максимальный конкатенированный выходной размер слова составляет 128 битов.

Поддерживаемые типы данных

  • Входной параметр: фиксированная точка, целое число (подписанный или без знака), булевская переменная

  • Вывод : фиксированная точка Без знака или целое число

Алгоритмы

Блок использует bitconcat функция, чтобы вычислить результат. То, как блок действует, зависит от номера и размерностей входных параметров, можно следующим образом:

  • Один вход: вход является скаляром или вектором. Когда вход является вектором, генератор кода конкатенирует отдельные векторные элементы. Например, если входным вектором является [1 2] это имеет тип данных ufix4, выход конкатенирует элементы 1 и 2 таким образом, что 1 формирует MSB (Старший значащий Бит). Выход:

    y = dec2bin ('00010010') = 18

  • Два входных параметров: Входные параметры являются любой комбинацией скаляра и вектора.

    • Когда один вход является скаляром, и другой вектор, генератор кода выполняет скалярное расширение. Каждый векторный элемент конкатенирован со скаляром, и выход имеет ту же размерность как вектор. Например, рассмотрите векторный [1 2] введите к H порт и скалярное значение 3 как введено к L порт. Оба входных параметров имеют тип данных ufix4. Выход является вектором, который конкатенирует таким образом, что MSB является конкатенацией элементов 1 и 3, и LSB является конкатенацией элементов 2 и 3.

      y = [dec2bin ('00010011') dec2bin ('00100100')] = [19 35]

    • Когда оба входных параметров являются векторами, у них должен быть тот же размер. В этом случае последним элементом является слово самое низкоуровневое, и первым элементом является самое высокое слово порядка. Например, считайте два входных вектора [1 2] и [3 4] это имеет тип данных ufix4. Выход является вектором, который конкатенирует таким образом, что MSB является конкатенацией элементов 1 и 3, и LSB является конкатенацией элементов 2 и 4.

      y = [dec2bin ('00010011') dec2bin ('00100100')] = [19 36]

  • Три или больше входных параметров (до максимума 128 входные параметры): Входные параметры являются однородно скаляром или вектором. Все векторные входные параметры должны иметь тот же размер. Например, полагайте, что три вектора вводят [1 2], [3 4], и [5 6] таким образом, что векторный [1 2] вводится к H порт и [5 6] вводится к L порт. В этом случае выход является вектором, который сначала конкатенирует [1 2] и [3 4].

    работайте временно = [dec2bin ('00010011') dec2bin ('00100100')] = [19 36]

    Результат этого расчета затем конкатенирован с векторным [5 6] произвести выход.

    y = [dec2bin ('000100110101') dec2bin ('001001000110')] = [309 582]

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Смотрите также

Блоки

Введенный в R2014a