Main Content

Logical Operator

指定した論理演算を入力に実行

  • Logical Operator block

ライブラリ:
Simulink / Commonly Used Blocks
Simulink / Logic and Bit Operations
HDL Coder / Commonly Used Blocks
HDL Coder / Logic and Bit Operations

説明

Logical Operator ブロックは、そのブロックの入力に対して、指定した論理演算を実行します。入力値が非ゼロの場合は true (1) に、ゼロの場合は false (0) になります。

[演算子] パラメーター リストを使って入力を接続する論理演算を選択してください。[アイコン形状] プロパティとして [四角形] を選択する場合、選択された演算名がブロック アイコンに表示されます。[アイコン形状] プロパティとして [記号] を選択した場合、選択された演算子の名前がブロック アイコンに表示されます。次の表に、サポートされている操作を示します。

演算説明

AND

すべての入力が TRUE の場合は TRUE

OR

1 つ以上の入力が TRUE の場合は TRUE

NAND

1 つ以上の入力が FALSE の場合は TRUE

NOR

いずれの入力も TRUE でない場合は TRUE

XOR

奇数個の入力が TRUE の場合は TRUE

NXOR

偶数個の入力が TRUE の場合は TRUE

NOT

入力が FALSE の場合は TRUE

[アイコン形状] として [記号] を選択した場合、ブロックの外見はその関数を示します。Simulink® は、論理関数に関する IEEE® Standard Graphic Symbols に従い、選択された演算子に対する論理回路記号を表示します。

入力端子の数を指定するには、[入力端子の数] パラメーターを使用します。出力タイプは、[出力データ型] パラメーターを使用して指定します。出力値は、TRUE の場合は 1、FALSE の場合は 0 です。

メモ:

出力データ型は正確に 0 を表す必要があります。この条件を満たすデータ型には、符号付き整数、符号なし整数、任意の浮動小数点データ型などがあります。

出力のサイズは、以下のように入力ベクトルのサイズと選択した演算子によって決まります。

  • このブロックが 1 つを超える入力をもっている場合、非スカラーの任意の入力は、同じ次元をもつ必要があります。たとえば、ある入力が 2 行 2 列配列の場合、他の非スカラー入力もすべて 2 行 2 列配列でなければなりません。

    スカラー入力は、非スカラー入力と同じ次元をもつように拡張されます。

    このブロックが 1 つを超える入力をもっている場合、出力は (スカラー拡張後に) 入力と同じ次元をもち、各出力要素は、対応する入力要素に、指定した論理演算を適用した結果になります。たとえば、指定した演算が AND で、入力が 2 行 2 列配列である場合、出力はその左上の要素が入力の左上の要素に AND を適用した結果に等しい 2 行 2 列配列になります。

  • 単一ベクトル入力の場合、このブロックはベクトルのすべての要素に対して演算 (NOT 演算を除く) を適用します。出力は、常にスカラーです。

  • NOT 演算子は 1 つの入力だけを受け入れ、入力はスカラーまたはベクトルです。入力がベクトルの場合、出力は、入力ベクトル要素の論理補集合を含んでいる同じサイズのベクトルになります。

多入力 XOR ゲートとして構成されている場合、このブロックは論理要素に関する IEEE 標準規格によって規定されている、剰余 2 の加算演算を行います。

端子

入力

すべて展開する

スカラー、ベクトルまたは行列として指定される最初の入力信号。

データ型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

スカラー、ベクトルまたは行列として指定される 2 番目の入力信号。

データ型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

スカラー、ベクトルまたは行列として指定される N 番目の入力信号。

依存関係

追加の入力端子を有効にするには、[入力端子の数] パラメーターを使用します。

データ型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

出力

すべて展開する

次元が入力と同じで、0 と 1 で構成される出力信号。[すべての入出力が同じデータ型をもつ] パラメーターと [出力データ型] パラメーターを使用して出力データ型を制御します。

データ型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

パラメーター

すべて展開する

メイン

ブロック入力に適用される論理演算子を選択します。

  • AND — すべての入力が TRUE の場合は TRUE

  • OR — 1 つ以上の入力が TRUE の場合は TRUE

  • NAND — 1 つ以上の入力が FALSE の場合は TRUE

  • NOR — いずれの入力も TRUE でない場合は TRUE

  • XOR — 奇数個の入力が TRUE の場合は TRUE

  • NXOR — 偶数個の入力が TRUE の場合は TRUE

  • NOT — 入力が FALSE の場合は TRUE

プログラムでの使用

ブロック パラメーター: Operator
型: 文字ベクトル
値: 'AND' | 'OR' | 'NAND' | 'NOR' | 'XOR' | 'NXOR' | 'NOT'
既定の設定: 'AND'

ブロック入力の数を正の整数として指定します。

プログラムでの使用

ブロック パラメーター: Inputs
型: 文字ベクトル
値: 正の整数
既定の設定: '2'

依存関係

このパラメーターは、[演算子][NOT] に設定している場合は使用できません。

ブロック アイコンの形状を指定します。

  • 四角形 — 選択された演算子名を表示する四角形のブロックになります。

  • 記号 — IEEE 標準によって指定されるように、選択された演算子に対する論理回路記号を使用します。

プログラムでの使用

ブロック パラメーター: IconShape
型: 文字ベクトル
値: 'rectangular' | 'distinctive'
既定の設定: 'rectangular'

サンプルの時間間隔を指定します。サンプル時間を継承するには、このパラメーターを -1 に設定します。詳細については、サンプル時間の指定を参照してください。

依存関係

このパラメーターは、-1 以外の値に設定した場合にのみ表示されます。詳細は、サンプル時間が推奨されないブロックを参照してください。

プログラムでの使用

ブロック パラメーター: SampleTime
型: string スカラーまたは文字ベクトル
既定の設定: "-1"

データ型

すべてのブロック入力と出力が同じデータ型をもつ必要がある場合は、このチェック ボックスをオンにします。このチェック ボックスをオフにすると、入力と出力が異なるデータ型をもつことができます。

プログラムでの使用

ブロック パラメーター: AllPortsSameDT
型: 文字ベクトル
値: 'off' | 'on
既定の設定: 'off'

出力データ型を指定します。選択肢を以下に示します。

  • boolean — ブロック出力のデータ型は boolean です。

  • [継承: 論理] (コンフィギュレーション パラメーターの最適化を参照) — ブロックは [boolean データとして論理信号を処理] コンフィギュレーション パラメーターを使用して、出力データ型を指定します (boolean データ (対 double) として論理信号を処理を参照)。

    メモ

    このオプションで、boolean オプションが使用可能になる前に作成されたモデルがサポートされます。新しいモデルに対しては、他のオプションのいずれか、できれば [boolean] を使用してください。

  • fixdt(1,16) — ブロック出力には固定小数点データ型 fixdt(1,16) が指定されています。

    ヒント

    データ属性の設定には [データ型アシスタント] が役立ちます。[データ型アシスタント] を使用するには、the Show data type assistant button をクリックします。詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。

  • <data type expression> — ブロック出力のデータ型は、データ型式として指定したデータ型です (たとえば、Simulink.NumericType)。

    ヒント

    組み込みデータ型 (doublesingleint8uint8int16uint16int32、または uint32) を入力するには、式を一重引用符で囲みます。たとえば、「double」ではなく、「'double'」と入力します。

プログラムでの使用

ブロック パラメーター: OutDataTypeStr
型: 文字ベクトル
値: 'Inherit: Logical (see Configuration Parameters: Optimization)' | 'boolean' | 'fixdt(1,16)' | '<data type expression>'
既定の設定: 'boolean'

指定するデータのカテゴリを選択します。

  • 組み込み — 組み込みデータ型を指定します。組み込み を選択すると、boolean が有効になります。

  • 継承 — データ型の継承規則を指定します。継承 を選択すると、[論理 (コンフィギュレーション パラメーターの最適化を参照)] が有効になります。

  • 固定小数点 — 固定小数点データ型を指定します。

  • — データ型を評価する式を指定します。

依存関係

このパラメーターを有効にするには、[データ型アシスタントを表示] ボタンをクリックします。

この信号のデータ型オーバーライド モードを選択します。

  • [継承] を選択すると、Simulink はコンテキストからデータ型オーバーライド設定を継承します。コンテキストとはブロックのことで、信号を使用している Simulink の Simulink.Signal オブジェクトまたは Stateflow® チャートです。

  • [オフ] を選択すると、Simulink はコンテキストのデータ型オーバーライド設定を無視し、信号に対して指定された固定小数点データ型を使用します。

詳細については、Simulink ドキュメンテーションのデータ型アシスタントを利用したデータ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][組み込み] または [固定小数点] に設定します。

ヒント

個々のデータ型に対してデータ型オーバーライドをオフにする機能により、データ型オーバーライドを適用する際に、モデル内のデータ型をさらに効果的に制御できます。たとえば、このオプションを使用すると、データ型オーバーライド設定にかかわらず、データ型が下流ブロックの要件を満たすことを確認できます。

固定小数点データを符号付きにするか、符号なしにするかを指定します。符号付きデータでは正の値と負の値を表現できますが、符号なしデータでは正の値のみを表現できます。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][固定小数点] に設定します。

量子化された整数をもつ語のビット サイズを指定します。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][固定小数点] に設定します。

オーバーフローを避け、量子化誤差を最小限に抑えるための固定小数点データのスケーリング方法を指定します。[整数] を指定すると、2 進小数点の位置を指定し、小数部の長さを 0 に設定した場合と同じ結果になります。

依存関係

このパラメーターを有効にするには、[データ型アシスタントを表示] ボタンをクリックして、[モード][固定小数点] に設定します。

ブロックの特性

データ型

Boolean | double | fixed point | half | integer | single

直達

はい

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

いいえ

拡張機能

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

PLC コード生成
Simulink® PLC Coder™ を使用して構造化テキスト コードを生成します。

固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。

バージョン履歴

R2006a より前に導入