Extract Bits

Выведите выбор непрерывных битов от входного сигнала

  • Библиотека:
  • Simulink / Логика и Битовые операции

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

  • Extract Bits block

Описание

Блок Extract Bits позволяет вам выводить непрерывный выбор битов от сохраненного целочисленного значения входного сигнала. Используйте параметр Bits to extract, чтобы задать метод для выбора выходных битов.

  • Выберите Upper half выводить половину входных битов, которые содержат старший значащий бит. Если существует нечетное число битов во входном сигнале, количество выходных битов дано уравнением

    number of output bits = ceil(number of input bits/2)
  • Выберите Lower half выводить половину входных битов, которые содержат младший значащий бит. Если существует нечетное число битов во входном сигнале, количество выходных битов дано уравнением

    number of output bits = ceil(number of input bits/2)
  • Выберите Range starting with most significant bit выводить определенное число старших значащих битов входного сигнала. Задайте количество старших значащих битов, чтобы вывести в параметре Number of bits.

  • Выберите Range ending with least significant bit выводить определенное число младших значащих битов входного сигнала. Задайте количество младших значащих битов, чтобы вывести в параметре Number of bits.

  • Выберите Range of bits указать на ряд непрерывных битов входа, чтобы вывести в параметре Bit indices. Вы указываете на область значений в [start end] формат и индексы входных битов помечены, непрерывно начав в 0 для младшего значащего бита.

Этот блок не сообщает, переносятся на предупреждениях переполнения в процессе моделирования. Чтобы сообщить об этих предупреждениях, смотрите Simulink.restoreDiagnostic страница с описанием. Блок действительно сообщает об ошибках, должных переноситься на переполнении.

Порты

Входной параметр

развернуть все

Входной сигнал в виде скаляра, вектора, матрицы или массива N-D. Входные параметры с плавающей точкой передаются через неизменный блок. boolean входные параметры обработаны как uint8 сигналы.

Примечание

Выполнение битовых операций на целом числе со знаком затрудняет. Можно избежать трудности путем преобразования типа данных входных сигналов к типам беззнаковых целых чисел.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Вывод

развернуть все

Непрерывный выбор извлеченных битов в виде скаляра, вектора, матрицы или массива N-D. Входные параметры с плавающей точкой передаются через неизменный блок.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Параметры

развернуть все

Выберите метод для извлечения битов от входного сигнала.

Рассмотрите входной сигнал, который представлен в двоичном файле 110111001:

  • Если вы выбираете Upper half для параметра Bits to extract выходом является 11011 в двоичном файле.

  • Если вы выбираете Lower half для параметра Bits to extract выходом является 11001 в двоичном файле.

  • Если вы выбираете Range starting with most significant bit для параметра Bits to extract, и задают 3 для параметра Number of bits выходом является 110 в двоичном файле.

  • Если вы выбираете Range ending with least significant bit для параметра Bits to extract, и задают 8 для параметра Number of bits выходом является 10111001 в двоичном файле.

  • Если вы выбираете Range of bits для параметра Bits to extract, и задают  [4 7] для параметра Bit indices выходом является 1011 в двоичном файле.

Программируемое использование

Параметры блоков: bitsToExtract
Ввод: символьный вектор
Значения: 'Upper half' | 'Lower half' | 'Range starting with most significant bit' | 'Range ending with least significant bit' | 'Range of bits'
Значение по умолчанию: 'Upper half'

Выберите количество битов, чтобы вывести от входного сигнала. Типы данных целого числа со знаком должны иметь по крайней мере два бита. Целочисленные типы данных без знака могут быть столь же короткими как один бит.

Зависимости

Чтобы включить этот параметр, установите Bits to extract на Range starting with most significant bit или Range ending with least significant bit.

Программируемое использование

Параметры блоков: numBits
Ввод: символьный вектор
Значения: положительное целое число
Значение по умолчанию: '8'

Укажите непрерывный диапазон битов входного сигнала, чтобы вывести. Укажите диапазон в [start end] формат. Индексы присвоены входным битам начиная с 0 на уровне наименее значимого бита.

Зависимости

Чтобы включить этот параметр, установите Bits to extract на Range of bits.

Программируемое использование

Параметры блоков: bitIdxRange
Ввод: символьный вектор
Значения: непрерывная область значений
Значение по умолчанию: '[0 7]'

Выберите масштабирующийся режим, чтобы использовать на выходном выборе бита:

  • Когда вы выбираете Preserve fixed-point scaling, масштабирование фиксированной точки входа используется, чтобы определить выход, масштабирующийся во время преобразования типа данных.

  • Когда вы выбираете Treat bit field as an integer, масштабирование фиксированной точки входа проигнорировано, и только сохраненное целое число используется для расчета тип выходных данных.

Программируемое использование

Параметры блоков: outScalingMode
Ввод: символьный вектор
Значения: 'Preserve fixed-point scaling' | 'Treat bit field as an integer'
Значение по умолчанию: 'Preserve fixed-point scaling'

Характеристики блока

Типы данных

Boolean | double | fixed point | integer | single

Прямое сквозное соединение

yes

Многомерные сигналы

yes

Сигналы переменного размера

no

Обнаружение пересечения нулем

no

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

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

Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.

Преобразование фиксированной точки
Спроектируйте и симулируйте системы фиксированной точки с помощью Fixed-Point Designer™.

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

| |

Представлено до R2006a