# Bias

Libraries:
HDL Coder / HDL Floating Point Operations
HDL Coder / Math Operations

## Description

The Bias block adds a bias, or offset, to the input signal according to

Y = U + bias

where U is the block input and Y is the output.

## Ports

### Input

expand all

Input signal to which the bias is added to create the output signal.

Data Types: `half` | `single` | `double` | `int8` | `int16` | `int32` | `int64` | `uint8` | `uint16` | `uint32` | `uint64` | `fixed point`

### Output

expand all

Output signal resulting from adding the bias to the input signal.

Data Types: `half` | `single` | `double` | `int8` | `int16` | `int32` | `int64` | `uint8` | `uint16` | `uint32` | `uint64` | `fixed point`

## Parameters

expand all

Specify the value of the offset to add to the input signal.

#### Programmatic Use

 Block Parameter: `Bias` Type: character vector Values: real, finite Default: `'0.0'`

Specify whether overflows saturate or wrap.

• `on` — Overflows saturate to either the minimum or maximum value that the data type can represent.

• `off` — Overflows wrap to the appropriate value that the data type can represent.

For example, the maximum value that the signed 8-bit integer `int8` can represent is 127. Any block operation result greater than this maximum value causes overflow of the 8-bit integer.

• With this parameter selected, the block output saturates at 127. Similarly, the block output saturates at a minimum output value of -128.

• With this parameter cleared, the software interprets the overflow-causing value as `int8`, which can produce an unintended result. For example, a block result of 130 (binary 1000 0010) expressed as `int8` is -126.

#### Tips

• Consider selecting this parameter when your model has a possible overflow and you want explicit saturation protection in the generated code.

• Consider clearing this parameter when you want to optimize efficiency of your generated code. Clearing this parameter also helps you to avoid overspecifying how a block handles out-of-range signals. For more information, see Troubleshoot Signal Range Errors.

• When you select this parameter, saturation applies to every internal operation on the block, not just the output or result.

• In general, the code generation process can detect when overflow is not possible. In this case, the code generator does not produce saturation code.

#### Programmatic Use

To set the block parameter value programmatically, use the `set_param` function.

 Parameter: `SaturateOnIntegerOverflow` Values: `'off'` (default) | `'on'`

## Block Characteristics

 Data Types `double` | `fixed point` | `half` | `integer` | `single` Direct Feedthrough `yes` Multidimensional Signals `no` Variable-Size Signals `yes` Zero-Crossing Detection `no`

expand all

## Version History

Introduced before R2006a