Document toolboxDocument toolbox

LogicBinaryOpCombination

Overview

Performs logical operations on binary signals

Discussion

This module can compute multiple binary operations sequentially and write the result in a defined output channel. The output is then a channel integer signal that is formed as the binary operation applied over defined input and output channels.

For example: Out[0] = ( ( ( In[1]&In[3] ) | In[0] ) & In[2] ). The array variable .binaryOpConfig determines the type of binary operation. Possible values are: 0 = AND, 1 = OR, 2 = XOR, 3 = NAND, 4 = NOR, 5 = XNOR. The binary operation is applied on a bit-by-bit basis to the 32-bit signals. 6 = CONST copies the value from the input to the output. Column 1 contains the input channel index (zero-based). Column 2 contains the output channel index (zero-based). Column 3 specifies which binary operation should be performed

This module supports only control data of block size = 1.

Type Definition

typedef struct _ModuleLogicBinaryOpCombination { ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure INT32 numOut; // Number of output channels INT32 numOps; // Number of binary operations to be computed INT32 defaultOut; // Defines the default output value for unsused channels INT32* binaryOpConfig; // Column 1: Input channel index, Column 2: Output channel index, Column 3: AND=0, OR=1, XOR=2, NAND=3, NOR=4, XNOR=5, CONST=6. Selects the type of binary operations that is performed. } ModuleLogicBinaryOpCombinationClass;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

numOut

int

const

0

1

Unrestricted

 

numOps

int

const

0

1

Unrestricted

 

defaultOut

int

parameter

0

0

0:1

 

binaryOpConfig

int*

parameter

0

[1 x 3]

Unrestricted

 

Pins

Input Pins

Name: in

Description: Control input

Data type: int

Channel range: Unrestricted

Block size range: 1

Sample rate range: Unrestricted

Complex support: Real

Output Pins

Name: out

Description: Control output

Data type: int

MATLAB Usage

File Name: logic_binary_op_combination_module.m

Creates a module that performs Boolean binary operations (AND, OR, XOR) on one or more integer values. The module performs the operation on a block-by-block basis. The third argument specifies how many operations are performed. The module has one input pin with an arbitrary number of interleaved channels and one output pin with a user defined number of channels. Arguments: NAME - name of the module. NUMOUT - number of output channels. By default 5. NUMOPS - number of operations to compute. By default 5. Copyright 2022 DSP Concepts, Inc. All Rights Reserved. AudioWeaverModule [This tag makes it appear under awe_help]

Â