メインコンテンツ

Bit to Integer Converter

ビット ベクトルを対応する整数ベクトルにマッピングする

  • Bit to Integer Converter block

ライブラリ:
Simulink / Logic and Bit Operations
Communications Toolbox / Utility Blocks
HDL Coder / Logic and Bit Operations

説明

Bit to Integer Converter ブロックは、入力ベクトル内のビット グループを出力ベクトル内の整数にマッピングします。

M[Number of bits per integer(M)] パラメーターで指定されると、次のようになります。

  • 符号なし整数の場合、このブロックは M ビットの各グループを範囲 [0, (2M – 1)] の整数にマッピングします。結果として、出力ベクトルの長さは入力ベクトルの長さの 1/M 倍になります。

  • 符号付き整数の場合、このブロックは M ビットの各グループを範囲 [(–2M-1), (2M – 1 – 1)] の整数にマッピングします。

端子

入力

すべて展開する

入力信号。スカラーまたは [整数あたりのビット数(M)] パラメーターで指定された値の倍数の長さを持つビットの列ベクトルとして指定します。入力は 0 または 1 の値を持つビットである必要があります。

データ型: double

出力

すべて展開する

出力信号。整数または整数の列ベクトルとして返されます。[ビット圧縮後、結果の整数値を次のように扱う] パラメーターは、入力ビットを符号なしとして扱うか符号付きとして扱うかを指定します。

  • 入力ビットが符号なしとして扱われる場合、各整数出力の範囲は [0, (2M – 1)] になります。

  • 入力ビットが符号付きとして扱われる場合、各整数出力の範囲は [(–2M-1), (2M – 1 – 1)] になります。

パラメーター

すべて展開する

出力の各整数にマップされる入力ビットの数。範囲 [1, 32] の整数として指定します。

プログラムでの使用

ブロック パラメーター: nbits
: 文字ベクトル
: 範囲 [1, 32] の整数
既定の設定: '3'

入力ビット順。'MSB first' または 'LSB first' として指定します。

  • 'MSB first' –– 入力信号の最初のビットは最上位ビット (MSB) です。

  • 'LSB first' –– 入力信号の最初のビットは最下位ビット (LSB) です。

プログラムでの使用

ブロック パラメーター: bitOrder
: 文字ベクトル
: 'MSB first' | 'LSB first'
既定の設定: 'MSB first'

ビット圧縮後に結果の整数値を符号付きとして扱うか、符号なしとして扱うかを指定します。このパラメーター設定により、使用可能な [出力データ型] の選択項目が決まります。

ヒント

このパラメーターが [符号なし] に設定されていて、ブロックにオーバーフローがある場合、ブロックは [ビット圧縮後、結果の整数値を次のように扱う][符号付き] に設定されているときと同じように動作します。

プログラムでの使用

ブロック パラメーター: signedOutputValues
: 文字ベクトル
: 'Unsigned' | 'Signed'
既定の設定: 'Unsigned'

[出力データ型] オプションは、対象とする出力の符号属性に応じて変わります。

出力整数が [符号付き] の場合、次の [出力データ型] オプションから選択できます。

  • 内部ルールによる継承

  • 最小の整数

  • double

  • single

  • int8

  • int16

  • int32

出力整数が [符号なし] の場合、[符号付き] のオプションに加えて次のオプションを選択できます。

  • 入力と同じ

  • uint8

  • uint16

  • uint32

このパラメーターを [内部ルールによる継承] に設定すると、ブロックは出力のデータ型を入力のデータ型に基づいて判定します。

  • 入力信号が浮動小数点 ([double] または [single]) の場合、出力のデータ型は入力のデータ型と同じになります。

  • 入力のデータ型が浮動小数点でない場合、出力のデータ型はパラメーターが [Smallest integer] に設定されているものとして決定されます。

このパラメーターを [最小の整数] に設定すると、ブロックは [コンフィギュレーション パラメーター] ダイアログ ボックスの[ハードウェア実行] ペインで使用されている設定に基づいて出力のデータ型を選択します。

  • デバイス ベンダーに [ASIC/FPGA] を選択した場合、出力データ型は、[整数あたりのビット数(M)] パラメーターの設定に基づいて、最小の最適な整数または固定小数点データ型になります。

  • その他のすべてのデバイス ベンダーの選択項目では、出力データ型は、最適な最小ビット サイズを格納するのに十分な大きさの、使用可能な最小の (符号付きまたは符号なし) 整数語長になります。

プログラムでの使用

ブロック パラメーター: outDtype
: 文字ベクトル
: 'Inherit via internal rule' | 'Smallest integer' | 'Same as input' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32'
既定の設定: 'Inherit via internal rule'

ブロックの特性

データ型

Boolean | double | fixed pointa, b | integer | single

直達

いいえ

多次元信号

いいえ

可変サイズの信号

はい

ゼロクロッシング検出

いいえ

a 固定小数点入力は ufix(1) でなければなりません。

b ASIC/FPGA が [ハードウェア実行] ペインで選択されており、出力データ型が (a) [Smallest integer] または (b) [Inherit via internal rule] のいずれかに設定され、それと同時に入力が非浮動小数点の場合、ufix(N) または sfix(N) です。

拡張機能

すべて展開する

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2006a より前に導入

すべて展開する

参考

ブロック

関数